AD ADM1020

a
8-Lead, Low-Cost, System
Temperature Monitor
ADM1020
FEATURES
On-Chip and Remote Temperature Sensing
No Calibration Necessary
1ⴗC Accuracy for On-Chip Sensor
3ⴗC Accuracy for Remote Sensor
Programmable Over/Under Temperature Limits
Programmable Conversion Rate
2-Wire SMBus™ Serial Interface
Supports SMBus Alert
70 ␮A Max Operating Current
3 ␮A Standby Current
+3 V to +5.5 V Supply
8-Lead SOIC Package
PRODUCT DESCRIPTION
APPLICATIONS
Desktop Computers
Notebook Computers
Smart Batteries
Industrial Controllers
Telecommunication Equipment
Instrumentation
The ADM1020 communicates over a two-wire serial interface
compatible with System Management Bus (SMBus) standards.
Under and over temperature limits can be programmed into the
devices over the serial bus, and an ALERT output signals when
the on-chip or remote temperature is out of range. This output
can be used as an interrupt, or as an SMBus alert.
The ADM1020 is a two-channel digital thermometer and
under/over temperature alarm, intended for use in personal
computers and other systems requiring thermal monitoring and
management. The device can measure the temperature of a
microprocessor using a diode-connected NPN or PNP transistor, which may be provided on-chip in the case of the Pentium®
II or similar processors, or can be a low-cost discrete device
such as the 2N3904. A novel measurement technique cancels
out the absolute value of the transistor’s base emitter voltage, so
that no calibration is required. The second measurement channel measures the output of an on-chip temperature sensor, to
monitor the temperature of the device and its environment.
FUNCTIONAL BLOCK DIAGRAM
ADDRESS POINTER
REGISTER
ONE-SHOT
REGISTER
CONVERSION RATE
REGISTER
LOCAL TEMPERATURE
VALUE REGISTER
ON-CHIP TEMP.
SENSOR
D+
D–
ANALOG
MUX
8-BIT A-TO-D
CONVERTER
BUSY
RUN/STANDBY
REMOTE TEMPERATURE
VALUE REGISTER
LOCAL TEMPERATURE
LOW LIMIT COMPARATOR
LOCAL TEMPERATURE
LOW LIMIT REGISTER
LOCAL TEMPERATURE
HIGH LIMIT COMPARATOR
LOCAL TEMPERATURE
HIGH LIMIT REGISTER
REMOTE TEMPERATURE
LOW LIMIT COMPARATOR
REMOTE TEMPERATURE
LOW LIMIT REGISTER
REMOTE TEMPERATURE
HIGH LIMIT COMPARATOR
REMOTE TEMPERATURE
HIGH LIMIT REGISTER
CONFIGURATION
REGISTER
EXTERNAL DIODE OPEN-CIRCUIT
INTERRUPT
MASKING
STATUS REGISTER
ALERT
ADM1020
SMBUS INTERFACE
VDD
GND
SDATA
SCLK
ADD
SMBus is a trademark of Intel Corporation.
Pentium is a registered trademark of Intel Corporation.
REV. 0
Information furnished by Analog Devices is believed to be accurate and
reliable. However, no responsibility is assumed by Analog Devices for its
use, nor for any infringements of patents or other rights of third parties
which may result from its use. No license is granted by implication or
otherwise under any patent or patent rights of Analog Devices.
One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A.
Tel: 781/329-4700
World Wide Web Site: http://www.analog.com
Fax: 781/326-8703
© Analog Devices, Inc., 1999
ADM1020–SPECIFICATIONS (T = T
A
Parameter
Min
POWER SUPPLY AND ADC
Temperature Resolution
Temperature Error, Local Sensor
1
Temperature Error, Remote Sensor
Supply Voltage Range
Undervoltage Lockout Threshold
Undervoltage Lockout Hysteresis
Power-On Reset Threshold
POR Threshold Hysteresis
Standby Supply Current
Average Operating Supply Current
Auto-Convert Mode, Averaged Over 4 Seconds
Conversion Time
–3
–3
–5
3
2.5
0.9
65
MIN to T MAX,
Typ
VDD = 3.0 V to 3.6 V, unless otherwise noted)
Max
Units
Test Conditions/Comments
Guaranteed No Missed Codes
+3
+3
+5
3.6
2.95
°C
°C
°C
°C
°C
V
V
±1
2.7
25
1.7
50
3
4
70
160
115
2.2
10
190
290
170
Remote Sensor Source Current
SMBUS INTERFACE
Logic Input High Voltage, VIH
STBY, SCLK, SDATA
Logic Input Low Voltage, VIL
STBY, SCLK, SDATA
SMBus Output Low Sink Current
ALERT Output Low Sink Current
Logic Input Current, IIH, IIL
SMBus Input Capacitance, SCLK, SDATA
SMBus Clock Frequency
SMBus Clock Low Time, tLOW
SMBus Clock High Time, tHIGH
SMBus Start Condition Setup Time, tSU:STA
SMBus Repeat Start Condition
Setup Time, tSU:STA
SMBus Start Condition Hold Time, tHD:STA
µA
µA
V
µA
90
5.5
0.7
50
D– Source Voltage
Address Pin Bias Current
2.2
0.8
6
1
–1
+1
5
0
4.7
4
4.7
250
mV
V
mV
µA
µA
µA
µA
ms
100
Note 1
VDD Input, Disables ADC,
Rising Edge
VDD, Falling Edge2
VDD = 3.3 V, No SMBus Activity
SCLK at 10 kHz
0.25 Conversions/Sec Rate
2 Conversions/Sec Rate
From Stop Bit to Conversion
Complete (Both Channels)
D+ Forced to D– + 0.65 V
High Level
Low Level
Momentary at Power-On Reset
V
VDD = 3 V to 5.5 V
V
mA
mA
µA
pF
kHz
µs
µs
µs
ns
VDD = 3 V to 5.5 V
SDATA Forced to 0.6 V
ALERT Forced to 0.4 V
4
µs
SMBus Stop Condition Setup Time, tSU:STO
4
µs
SMBus Data Valid to SCLK
Rising Edge Time, tSU:DAT
SMBus Data Hold Time, tHD:DAT
SMBus Bus Free Time, tBUF
SCLK Falling Edge to SDATA
Valid Time, tVD,DAT
250
ns
0
4.7
µs
µs
1
TA = +60°C to +100°C
µs
tLOW Between 10% Points
tHIGH Between 90% Points
Between 90% and 90% Points
Time from 10% of SDATA to
90% of SCLK
Time from 90% of SCLK to 10%
of SDATA
Time from 10% or 90% of
SDATA to 10% of SCLK
Between Start/Stop Condition
Master Clocking in Data
NOTES
1
Operation at VDD = +5 V guaranteed by design, not production tested.
2
Guaranteed by design, not production tested.
Specifications subject to change without notice.
–2–
REV. 0
ADM1020
ABSOLUTE MAXIMUM RATINGS*
PIN FUNCTION DESCRIPTION
Positive Supply Voltage (VDD ) to GND . . . . . . . . –0.3 V, +6 V
D+, ADD . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V, VDD + 0.3 V
D– to GND . . . . . . . . . . . . . . . . . . . . . . . . . . . .–0.3 V, +0.6 V
SCLK, SDATA, ALERT . . . . . . . . . . . . . . . . . . . . . –0.3 V, +6 V
Input Current, SDATA . . . . . . . . . . . . . . . . . . . . . –1, ± 50 mA
Input Current, D– . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ± 1 mA
ESD Rating, all Pins (Human Body Model) . . . . . . . . 4000 V
Continuous Power Dissipation
Up to +70°C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650 mW
Derating above +70°C . . . . . . . . . . . . . . . . . . . . 6.7 mW/°C
Operating Temperature Range . . . . . . . . . . –55°C to +125°C
Maximum Junction Temperature (TJ max) . . . . . . . . . +150°C
Storage Temperature Range . . . . . . . . . . . . –65°C to +150°C
Lead Temperature, Soldering
Vapor Phase 60 sec . . . . . . . . . . . . . . . . . . . . . . . . . +215°C
Infrared 15 sec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +200°C
Pin
No.
Mnemonic
Description
1
2
VDD
D+
3
D–
4
5
6
ADD
GND
ALERT
7
SDATA
8
SCLK
Positive Supply, +3 V to +5.5 V
Positive Connection to Emitter of Remote
Temperature Sensor.
Negative Connection to Base of Remote
Temperature Sensor.
Address Select Three-State Logic Input.
Supply 0 V Connection.
Open-Drain Logic Output Used as
Interrupt or SMBus Alert.
Logic Input/Output, SMBus Serial Data.
Open-Drain Output.
Logic Input, SMBus Serial Clock.
*Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the
device at these or any other conditions above those indicated in the operational
section of this specification is not implied. Exposure to absolute maximum rating
conditions for extended periods may affect device reliability.
PIN CONFIGURATION
THERMAL CHARACTERISTICS
VDD 1
8-Lead SOIC Package: θJA = 150°C/Watt.
D+ 2
8
ADM1020
ORDERING GUIDE
Model*
ADM1020AR-REEL
ADM1020AR-REEL7
Temperature
Range
Package
Description
Package
Option
0°C to +85°C
8-Lead Small Outline (SOIC)
SO-8
*REEL contains 2500 pieces; REEL7 contains 1000 pieces.
REV. 0
SCLK
SDATA
TOP VIEW
D– 3 (Not to Scale) 6 ALERT
ADD 4
5 GND
7
–3–
ADM1020 –Typical Performance Characteristics
120
30
100
20
80
D+ TO GND
0
70
READING
TEMPERATURE ERROR – 8C
90
10
–10
D+ TO VCC (5V)
–20
60
50
40
–30
30
–40
20
–50
10
0
–60
1.0
3.3
10
30
LEAKAGE RESISTANCE – MV
100
10
20
60
70
80
30
40
50
MEASURED TEMPERATURE
90
100
110
Figure 4. Pentium II Temperature Measurement vs.
ADM1020 Reading
Figure 1. Temperature Error vs. PC Board Track Resistance
6
25
5
20
TEMPERATURE ERROR – 8C
TEMPERATURE ERROR – 8C
0
4
250mV p-p REMOTE
3
2
1
100mV p-p REMOTE
15
10
5
0
0
–1
50
500
5k
500k
50k
FREQUENCY – Hz
5M
–5
1.0
50M
Figure 2. Temperature Error vs. Power Supply Noise
Frequency
2.2
3.2
4.7
D+ AND D– CAPACITANCE – nF
7
10
Figure 5. Temperature Error vs. Capacitance Between
D+ and D–
80
25
70
100mV p-p
SUPPLY CURRENT – mA
TEMPERATURE ERROR – 8C
20
15
10
50mV p-p
5
60
50
40
VCC = +5V
30
20
25mV p-p
0
10
–5
50
VCC = +3V
0
500
5k
50k
500k
FREQUENCY – Hz
5M
0
50M
1k
5k
10k
25k 50k 75k 100k 250k 500k 750k 1M
SCLK FREQUENCY – Hz
Figure 6. Standby Supply Current vs. Clock Frequency
Figure 3. Temperature Error vs. Common-Mode Noise
Frequency
–4–
REV. 0
ADM1020
10
100
ADDX = HI-Z
80
8
SUPPLY CURRENT – mA
TEMPERATURE ERROR – 8C
9
7
10mV SQ. WAVE
6
5
4
3
60
40
ADDX = GND
20
2
0
1
0
50
500
5k
100k
50k
500k
FREQUENCY – Hz
5M
25M
–20
50M
0
1.1 1.3 1.5 1.7 1.9 2.1 2.3 2.5 2.7 2.9 3.5 4.5
SUPPLY VOLTAGE – Volts
Figure 9. Standby Supply Current vs. Supply Voltage
Figure 7. Temperature Error vs. Differential-Mode Noise
Frequency
125
200
180
100
TEMPERATURE – 8C
SUPPLY CURRENT – mA
160
140
120
100
VCC = +5V
80
VCC = +3.3V
60
75
50
IMMERSED
IN +1158C
FLUORINERT BATH
25
40
20
0
0.0625
0
0.125
0.25
0.5
1
2
CONVERSION RATE – Hz
4
T=0
8
T=4
TIME – Sec
T=6
T=8
T = 10
Figure 10. Response to Thermal Shock
Figure 8. Operating Supply Current vs. Conversion
Rate
FUNCTIONAL DESCRIPTION
Control and configuration functions consist of:
The ADM1020 contains a two-channel A-to-D converter with
special input-signal conditioning to enable operation with
remote and on-chip diode temperature sensors. When the
ADM1020 is operating normally, the A-to-D converter operates
in a free-running mode. The analog input multiplexer alternately
selects either the on-chip temperature sensor to measure its local
temperature, or the remote temperature sensor. These signals
are digitized by the ADC and the results stored in the local and
remote temperature value registers as 8-bit, twos complement
words.
– switching the device between normal operation and standby
mode.
– masking or enabling the ALERT output.
– selecting the conversion rate.
MEASUREMENT METHOD
A simple method of measuring temperature is to exploit the
negative temperature coefficient of a diode, or the base-emitter
voltage of a transistor, operated at constant current. Unfortunately, this technique requires calibration to null out the effect
of the absolute value of VBE , which varies from device to device.
The measurement results are compared with local and remote,
high and low temperature limits, stored in four on-chip registers. Out of limit comparisons generate flags that are stored in
the Status Register, and one or more out-of-limit results will
cause the ALERT output to pull low.
The technique used in the ADM1020 is to measure the change
in VBE when the device is operated at two different currents.
This is given by:
The limit registers can be programmed, and the device controlled and configured, via the serial System Management Bus
(SMBus). The contents of any register can also be read back via
the SMBus.
REV. 0
T=2
∆VBE = KT/q × ln (N)
where:
K is Boltzmann’s constant.
q is charge on the electron (1.6 × 10–19 Coulombs).
T is absolute temperature in Kelvins.
N is ratio of the two currents.
–5–
ADM1020
VDD
I
N3I
IBIAS
LOWPASS FILTER
fC = 65kHz
D+
VOUT+
TO ADC
C1*
REMOTE
SENSING
TRANSISTOR
D–
VOUT–
BIAS
DIODE
*CAPACITOR C1 IS OPTIONAL.
IT IS ONLY NECESSARY IN NOISY ENVIRONMENTS.
C1 = 2.2nF TYPICAL, 3nF MAX.
Figure 11. Input Signal Conditioning
Figure 11 shows the input signal conditioning used to measure
the output of an external temperature sensor. This figure shows
the external sensor as a substrate transistor, provided for temperature monitoring on some microprocessors, but it could
equally well be a discrete transistor. If a discrete transistor is
used, the collector will not be grounded, and should be linked to
the base. To prevent ground noise interfering with the measurement, the more negative terminal of the sensor is not referenced
to ground, but is biased above ground by an internal diode at
the D– input. If the sensor is operating in a noisy environment,
C1 may optionally be added as a noise filter. Its value is typically 2200 pF but should be no more than 3000 pF. See the
section on Layout Considerations for more information on C1.
Table I. Temperature Data Format
To measure ∆VBE, the sensor is switched between operating
currents of I and N × I. The resulting waveform is passed
through a 65 kHz low-pass filter to remove noise, hence to a
chopper-stabilized amplifier that performs the functions of amplification and rectification of the waveform to produce a dc
voltage proportional to ∆VBE. This voltage is measured by the
ADC to give a temperature output in 8-bit twos complement
format. To further reduce the effects of noise, digital filtering is
performed by averaging the results of 16 measurement cycles.
Temperature
Digital Output
–128°C
–125°C
–100°C
–75°C
–50°C
–25°C
–1°C
0°C
+1°C
+10°C
+25°C
+50°C
+75°C
+100°C
+125°C
+127°C
1 000 0000
1 000 0011
1 001 1100
1 011 0101
1 100 1110
1 110 0111
1 111 1111
0 000 0000
0 000 0001
0 000 1010
0 001 1001
0 011 0010
0 100 1011
0 110 0100
0 111 1101
0 111 1111
ADM1020 REGISTERS
The ADM1020 contains nine registers that are used to store the
results of remote and local temperature measurements, high and
low temperature limits, and to configure and control the device.
A description of these registers follows, and further details are
given in Tables II to IV. It should be noted that the ADM1020’s
registers are dual port, and have different addresses for read and
write operations. Attempting to write to a read address, or to
read from a write address, will produce an invalid result. Register addresses above 0F are reserved for future use or used for
factory test purposes and should not be written to.
Signal conditioning and measurement of the internal temperature sensor is performed in a similar manner.
TEMPERATURE DATA FORMAT
One LSB of the ADC corresponds to 1°C, so the ADC can
theoretically measure from –128°C to +127°C, although the
practical lowest value is limited to –65°C due to device maximum ratings. The temperature data format is shown in Table I.
The results of the local and remote temperature measurements
are stored in the local and remote temperature value registers,
and are compared with limits programmed into the local and
remote high and low limit registers.
Address Pointer Register
The Address Pointer Register itself does not have, or require, an
address, as it is the register to which the first data byte of every
write operation is automatically written. This data byte is an
address pointer that sets up one of the other registers for the
second byte of the write operation, or for a subsequent read
operation.
–6–
REV. 0
ADM1020
The ALERT interrupt latch is not reset by reading the Status
Register, but will be reset when the ALERT output has been
serviced by the master reading the device address, provided the
error condition has gone away and the Status Register flag bits
have been reset.
The power-on default value of the Address Pointer Register is
00h, so if a read operation is performed immediately after poweron, without first writing to the address pointer, the value of the
local temperature will be returned, since its register address is
00h.
Value Registers
Table II. Status Register Bit Assignments
The ADM1020 has two registers to store the results of local and
remote temperature measurements. These registers are written
to by the ADC and can only be read over the SMBus.
Status Register
Bit 7 of the Status Register indicates that the ADC is busy converting when it is high. Bits 5 to 3 are flags that indicate the
results of the limit comparisons.
If the local and/or remote temperature measurement is above
the corresponding high temperature limit or below the corresponding low temperature limit, then one or more of these flags
will be set. Bit 2 is a flag that is set if the remote temperature
sensor is open-circuit. These five flags are NOR’d together, so
that if any of them are high, the ALERT interrupt latch will be
set and the ALERT output will go low. Reading the Status
Register will clear the five flag bits, provided the error conditions that caused the flags to be set have gone away. While a
limit comparator is tripped due to a value register containing an
out-of-limit measurement, or the sensor is open-circuit, the
corresponding flag bit cannot be reset. A flag bit can only be
reset if the corresponding value register contains an in-limit
measurement, or the sensor is good.
Bit
Name
Function
7
6
5
4
3
2
1–0
BUSY
LHIGH*
LLOW*
RHIGH*
RLOW*
OPEN*
1 When ADC Converting
1 When Local High-Temp Limit Tripped
1 When Local Low-Temp Limit Tripped
1 When Remote High-Temp Limit Tripped
1 When Remote Low-Temp Limit Tripped
1 When Remote Sensor Open-Circuit
Reserved
*These flags stay high until the Status Register is read or they are reset by POR.
Configuration Register
Two bits of the Configuration Register are used. If Bit 6 is 0,
which is the power-on default, the device is in operating mode
with the ADC converting. If Bit 6 is set to 1, the device is in
standby mode and the ADC does not convert. Standby mode
can also be selected by taking the STBY pin low.
Bit 7 of the configuration register is used to mask the ALERT
output. If Bit 7 is 0, which is the power-on default, the ALERT
output is enabled. If Bit 7 is set to 1, the ALERT output is
disabled.
Table III. List of Registers
Read Address (Hex)
Write Address (Hex)
Name
Power-On Default
Not Applicable
00
01
02
03
04
05
06
07
08
Not Applicable
10
11
12
15
17
19
20
FE
FF
Not Applicable
Not Applicable
Not Applicable
Not Applicable
09
0A
0B
0C
0D
0E
0F
Not Applicable
13
14
16
18
Not Applicable
21
Not Applicable
Not Applicable
Address Pointer
Local Temperature Value
Remote Temperature Value
Status
Configuration
Conversion Rate
Local Temperature High Limit
Local Temperature Low Limit
Remote Temperature High Limit
Remote Temperature Low Limit
One-Shot
Reserved
Reserved
Reserved
Reserved
Reserved
Reserved
Reserved
Manufacturer ID
Die Revision Code
Undefined
0000 0000 (00h)
0000 0000 (00h)
Undefined
0000 0000 (00h)
0000 0010 (02h)
0111 1111 (7Fh) (127°C)
1100 1001 (C9h) (–55°C)
0111 1111 (7Fh) (127°C)
1100 1001 (C9h) (–55°C)
See Note 1
Undefined (Note 2)
Undefined (Note 2)
Undefined (Note 2)
1000 0000 (Note 2)
Undefined (Note 2)
0000 0000 (Note 2)
Undefined
0100 0001 (41h)
Undefined
NOTES
1
Writing to address 0F causes the ADM1020 to perform a single measurement. It is not a data register as such and it does not matter what data is written to it.
2
These registers are reserved for future versions of the device.
REV. 0
–7–
ADM1020
0
same bus, and/or to avoid conflict with other devices. Although
only one address pins is provided, it is a three-level input, and
can be grounded, left unconnected, or tied to VDD, so that a
total of three different addresses are possible, as shown in
Table VI.
0
0
It should be noted that the state of the address pin is only
sampled at power-up, so changing it after power-up will have
no effect.
Table IV. Configuration Register Bit Assignments
Power-On
Default
Bit
Name
Function
7
MASK1
6
5–0
RUN/STOP
0 = ALERT Enabled
1 = ALERT Masked
0 = Run; 1 = Standby
Reserved
Table VI. Device Addresses
Conversion Rate Register
The lowest three bits of this register are used to program the
conversion rate by dividing the ADC clock by 1, 2, 4, 8, 16, 32,
64 or 128, to give conversion times from 125 ms (code 07h) to
16 seconds (code 00h). This register can be written to and read
back over the SMBus. The higher five bits of this register are
unused and must be set to zero. Use of slower conversion times
greatly reduces the device power consumption, as shown in
Table V.
ADD
0
NC
1
Conversion/Sec
00h
01h
02h
03h
04h
05h
06h
07h
08h to FFh
0.0625
0.125
0.25
0.5
1
2
4
8
Reserved
1001 100
1001 101
1001 110
NOTE: ADD is sampled at power-up only.
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 SDATA, while the serial clock line SCLK 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 eight bits, consisting of a 7-bit address (MSB first) plus a R/W bit, which
determines the direction of the data transfer, i.e., whether
data will be written to or read from the slave device.
Table V. Conversion Rate Register Codes
Data
Device Address
Average Supply Current
␮A Typ at VCC = 3.3 V
42
42
42
48
60
82
118
170
The peripheral whose address corresponds to the transmitted
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 while
the selected device waits for data to be read from or written
to it. If the R/W bit is a 0, the master will write to the slave
device. If the R/W bit is a 1, the master will read from the
slave device.
2. Data is sent over the serial bus in sequences of nine clock
pulses, eight 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.
Limit Registers
The ADM1020 has four Limit Registers to store local and remote, high and low temperature limits. These registers can be
written to and read back, over the SMBus. The high limit registers perform a > comparison while the low limit registers perform a < comparison. For example, if the high limit register is
programmed with 80°C, then measuring 81°C will result in an
alarm condition.
One-Shot Register
The One-Shot Register is used to initiate a single conversion
and comparison cycle when the ADM1020 is in standby mode,
after which the device returns to standby. This is not a data
register as such and it is the write operation that causes the oneshot conversion. The data written to this address is irrelevant
and is not stored.
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 master 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 operation is
determined at the beginning and cannot subsequently be
changed without starting a new operation.
SERIAL BUS INTERFACE
Control of the ADM1020 is carried out via the serial bus. The
ADM1020 is connected to this bus as a slave device, under the
control of a master device, e.g., the PIIX4
ADDRESS PIN
In general, every SMBus device has a 7-bit device address (except
for some devices that have extended, 10-bit addresses). When
the master device sends a device address over the bus, the slave
device with that address will respond. The ADM1020 has an
address select pin, ADD to allow selection of the device address, so that more than one ADM1020 can be used on the
–8–
REV. 0
ADM1020
In the case of the ADM1020, write operations contain either one or two bytes, while read operations contain one
byte, and perform the following functions:
register read address is sent, as data is not to be written to
the register. This is shown in Figure 12b.
A read operation is then performed consisting of the serial bus
address, R/W bit set to 1, followed by the data byte read from
the data register. This is shown in Figure 12c.
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 a valid 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.
2. If the Address Pointer Register is known to be already at the
desired address, data can be read from the corresponding
data register without first writing to the Address Pointer
Register, so Figure 12b can be omitted.
NOTES
1. Although it is possible to read a data byte from a data register
without first writing to the Address Pointer Register, if the
Address Pointer Register is already at the correct value, it is
not possible to write data to a register without writing to the
Address Pointer Register, because the first data byte of a
write is always written to the Address Pointer Register.
This is illustrated in Figure 12a. 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.
2. Don't forget that the ADM1020 registers have different addresses for read and write operations. The write address of a
register must be written to the address pointer if data is to be
written to that register, but it is not possible to read data
from that address. The read address of a register must be
written to the address pointer before data can be read from
that register.
When reading data from a register there are two possibilities:
1. If the ADM1020's Address Pointer Register value is unknown or not the desired value, it is first necessary to set it
to the correct value before data can be read from the desired
data register. This is done by performing a write to the
ADM1020 as before, but only the data byte containing the
1
9
9
1
SCLK
A5
A6
SDATA
A4
A3
A2
A1
A0
START BY
MASTER
D6
D7
R/W
ACK. BY
ADM1020
D5
D4
D3
D2
D1
D0
ACK. BY
ADM1020
FRAME 2
ADDRESS POINTER REGISTER BYTE
FRAME 1
SERIAL BUS ADDRESS BYTE
1
9
SCL (CONTINUED)
SDA (CONTINUED)
D7
D5
D6
D4
D3
D2
D1
D0
ACK. BY STOP BY
ADM1020 MASTER
FRAME 3
DATA BYTE
Figure 12a. Writing a Register Address to the Address Point Register, then Writing Data to the Selected Register
1
9
1
9
SCLK
SDATA
A6
A5
START BY
MASTER
A4
A3
A2
A1
A0
D7
R/W
D6
D5
D4
D3
D2
D1
D0
ACK. BY
ADM1020
FRAME 1
SERIAL BUS ADDRESS BYTE
ACK. BY
ADM1020
STOP BY
MASTER
FRAME 2
ADDRESS POINTER REGISTER BYTE
Figure 12b. Writing to the Address Pointer Register Only
1
9
9
1
SCLK
SDATA
START BY
MASTER
A6
A5
A4
A3
A2
A1
FRAME 1
SERIAL BUS ADDRESS BYTE
A0
D7
R/W
D6
D5
D4
D3
D2
–9–
D0
NO ACK.
STOP BY
BY MASTER MASTER
FRAME 2
DATA BYTE FROM ADM1020
Figure 12c. Reading Data from a Previously Selected Register
REV. 0
D1
ACK. BY
ADM1020
ADM1020
ALERT OUTPUT
SENSOR FAULT DETECTION
The ALERT output goes low whenever an out-of limit measurement is detected, or if the remote temperature sensor is opencircuit. It is an open-drain and requires a 10 kΩ pull-up to VDD.
Several ALERT outputs can be wire-ANDED together, so that
the common line will go low if one or more of the ALERT outputs goes low.
The ADM1020 has a fault detector at the D+ input that detects
if the external sensor diode is open-circuit. This is a simple
voltage comparator that trips if the voltage at D+ exceeds
VCC – 1 V (typical). The output of this comparator is checked
when a conversion is initiated, and sets Bit 2 of the Status Register if a fault is detected.
The ALERT output can be used as an interrupt signal to a
processor, or it may be used as an SMBALERT. Slave devices
on the SMBus can not normally signal to the master that they
want to talk, but the SMBALERT function allows them to do so.
If the remote sensor voltage falls below the normal measuring
range, for example due to the diode being short-circuited, the
ADC will output –128 (1000 0000). Since the normal operating
temperature range of the device only extends down to –55°C,
this output code should never be seen in normal operation, so it
can be interpreted as a fault condition. Since it will be outside
the power-on default low temperature limit (–55°C) and any
low limit that would normally be programmed, a short-circuit
sensor will cause an SMBus alert.
One or more ALERT outputs are connected to a common
SMBALERT line connected to the master. When the
SMBALERT line is pulled low by one of the devices, the
following procedure occurs as illustrated in Figure 13.
In this respect the ADM1020 differs from and improves upon,
competitive devices that output zero if the external sensor goes
short-circuit. These devices can misinterpret a genuine 0°C
measurement as a fault condition.
MASTER
RECEIVES
SMBALERT
START
ALERT
RESPONSE ADDRESS
RD ACK
MASTER SENDS
ARA AND READ
COMMAND
DEVICE
ADDRESS
NO
ACK STOP
If the external diode channel is not being used and it is shorted
out, the resulting ALERT may be cleared by writing 80h
(–128°C) to the low limit register.
DEVICE SENDS
ITS ADDRESS
Figure 13 Use of SMBALERT
1. SMBALERT pulled low.
APPLICATIONS INFORMATION
2. Master initiates a read operation and sends the Alert Response Address (ARA = 0001 100). This is a general call
address that must not be used as a specific device address.
FACTORS AFFECTING ACCURACY
Remote Sensing Diode
3. The device whose ALERT output is low responds to the
Alert Response Address and the master reads its device address. The address of the device is now known and it can be
interrogated in the usual way.
4. If more than one device’s ALERT output is low, the one with
the lowest device address will have priority, in accordance
with normal SMBus arbitration.
5. Once the ADM1020 has responded to the Alert Response
Address, it will reset its ALERT output, provided that the
error condition that caused the ALERT no longer exists. If
the SMBALERT line remains low, the master will send ARA
again, and so on until all devices whose ALERT outputs were
low have responded.
LOW POWER STANDBY MODES
The ADM1020 can be put into a low power standby mode by
setting Bit 6 of the Configuration Register. With Bit 6 low the
ADM1020 operates normally. When Bit 6 is high, the ADC is
inhibited, any conversion in progress is terminated without
writing the result to the corresponding value register.
The SMBus is still enabled. Power consumption in the standby
mode is reduced to less than 10 µA if there is no SMBus activity, or 100 µA if there are clock and data signals on the bus.
The ADM1020 is designed to work with substrate transistors
built into processors, or with discrete transistors. Substrate
transistors will generally be PNP types with the collector connected to the substrate. Discrete types can be either PNP or
NPN, connected as a diode (base shorted to collector). If an
NPN transistor is used then the collector and base are connected
to D+ and the emitter to D–. If a PNP transistor is used then
the collector and base are connected to D– and the emitter
to D+.
The user has no choice in the case of substrate transistors but if
a discrete transistor is used the best accuracy will be obtained by
choosing devices according to the following criteria:
1. Base-emitter voltage greater than 0.25 V at 6 µA, at the highest operating temperature.
2. Base-emitter voltage less than 0.95 V at 100 µA, at the lowest
operating temperature.
3. Base resistance less than 100 Ω.
4. Small variation in hFE (say 50 to 150) which indicates tight
control of VBE characteristics.
Transistors such as 2N3904, 2N3906 or equivalents in SOT-23
package are suitable devices to use.
When Bit 6 is set , a one-shot conversion of both channels can
be initiated by writing XXh to the One-Shot Register (address
0Fh).
–10–
REV. 0
ADM1020
5. Place a 0.1 µF bypass capacitor close to the VDD pin and
2200 pF input filter capacitors across D+, D– close to the
ADM1020.
LAYOUT CONSIDERATIONS
Digital boards can be electrically noisy environments, and the
ADM1020 is measuring very small voltages from the remote
sensor, so care must be taken to minimize noise induced at the
sensor inputs. The following precautions should be taken:
1. Place the ADM1020 as close as possible to the remote sensing diode. Provided that the worst noise sources such as clock
generators, data/address buses and CRTs are avoided, this
distance can be 4 to 8 inches.
2. Route the D+ and D– tracks close together, in parallel, with
grounded guard tracks on each side. Provide a ground plane
under the tracks if possible.
7. For really long distances (up to 100 feet) use shielded twisted
pair such as Belden #8451 microphone cable. Connect the
twisted pair to D+ and D– and the shield to GND close to
the ADM1020. Leave the remote end of the shield unconnected to avoid ground loops.
Because the measurement technique uses switched current
sources, excessive cable and/or filter capacitance can affect the
measurement. When using long cables, the filter capacitor may
be reduced or removed.
3. Use wide tracks to minimize inductance and reduce noise
pickup. 10 mil track minimum width and spacing is
recommended.
GND
6. If the distance to the remote sensor is more than 8 inches, the
use of twisted pair cable is recommended. This will work up
to about 6 to 12 feet.
Cable resistance can also introduce errors. 1 Ω series resistance
introduces about 0.5°C error.
10mil
10mil
D+
APPLICATION CIRCUITS
10mil
Figure 15 shows a typical application circuit for the ADM1020,
using a discrete sensor transistor connected via a shielded,
twisted pair cable. The pull-ups on SCLK, SDATA and ALERT
are required only if they are not already provided elsewhere in
the system.
10mil
D–
10mil
10mil
GND
10mil
VDD
Figure 14. Arrangement of Signal Tracks
ADM1020
4. Try to minimize the number of copper/solder joints, which
can cause thermocouple effects. Where copper/solder joints
are used, make sure that they are in both the D+ and D–
path and at the same temperature.
10kV
10kV
10kV
D+
SCLK
IN
D–
SDATA
I/O
ALERT
OUT
C1*
2N3904
Thermocouple effects should not be should not be a major
problem as 1°C corresponds to about 200 mV, and thermocouple voltages are about 3 mV/°C of temperature difference.
Unless there are two thermocouples with a big temperature
differential between them, thermocouple voltages should be
much less than 200 mV.
REV. 0
+3.3V
0.1mF
–11–
SHIELD
ADD
*C1 IS OPTIONAL
TO
PIIX4
CHIP
SET TO REQUIRED
ADDRESS
GND
Figure 15. Typical ADM1020 Application Circuit
ADM1020
PROCESSOR
C3445–4–4/99
The SCLK, and SDATA pins of the ADM1020 can be interfaced directly to the SMBus of an I/O controller such as the
Intel PCI ISA IDE Xcelerator (PIIX4) chip type 82371AB.
Figure 16 shows how the ADM1020 might be integrated into a
system using this type of I/O controller.
BUILT-IN
SENSOR
HOST BUS
PCI SLOTS
SECOND LEVEL
CACHE
MAIN MEMORY
(DRAM)
HOST-TO-PCI
BRIDGE
PCI BUS (3.3V OR 5V 30/33MHz)
CD ROM
HARD
DISK
D–
USB PORT 1
BMI IDE
ULTRA DMA/33
8237 1AB
(PIIX4)
HARD
DISK
D+
ADM1020
USB PORT 2
ALERT SCLK SDATA
GPI [ I,O] (30+)
SMBUS
AUDIO
KEYBOARD
SERIAL PORT
PARALLEL PORT
FLOPPY DISK
CONTROLLER
INFRARED
BIOS
ISA/EIO BUS
(3.3V, 5V TOLERANT)
Figure 16. Typical System Using ADM1020
OUTLINE DIMENSIONS
Dimensions shown in inches and (mm).
8-Lead SOIC
(SO-8)
0.1968 (5.00)
0.1890 (4.80)
0.1574 (4.00)
0.1497 (3.80)
8
5
1
4
0.2440 (6.20)
0.2284 (5.80)
PIN 1
0.0196 (0.50)
3 458
0.0099 (0.25)
0.0500 (1.27)
BSC
SEATING
PLANE
0.0192 (0.49)
0.0138 (0.35)
88
0.0098 (0.25) 08 0.0500 (1.27)
0.0160 (0.41)
0.0075 (0.19)
PRINTED IN U.S.A.
0.0098 (0.25)
0.0040 (0.10)
0.0688 (1.75)
0.0532 (1.35)
–12–
REV. 0