AD ADM1023ARQ

ACPI-Compliant
High-Accuracy Microprocessor
System Temperature Monitor
ADM1023*
a
FEATURES
Next Generation Upgrade to ADM1021
On-Chip and Remote Temperature Sensing
Offset Registers for System Calibration
1ⴗC Accuracy and Resolution on Local Channel
0.125ⴗC Resolution/1ⴗC Accuracy on Remote Channel
Programmable Over/Under Temperature Limits
Programmable Conversion Rate
Supports System Management Bus (SMBus) Alert
2-Wire SMBus Serial Interface
200 ␮A Max Operating Current (0.25 Conversions/
Seconds)
1 ␮A Standby Current
3 V to 5.5 V Supply
Small 16-Lead QSOP Package
APPLICATIONS
Desktop Computers
Notebook Computers
Smart Batteries
Industrial Controllers
Telecomms Equipment
Instrumentation
PRODUCT DESCRIPTION
The ADM1023 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.
Optimized for the Pentium® III; the higher accuracy offered
allows systems designers to safely reduce temperature guard
banding and increase system performance. The device can
measure the temperature of a microprocessor using a diode-connected PNP transistor, which may be provided on-chip in the
case of the Pentium III or similar processors, or can be a low
cost discrete NPN/PNP device such as the 2N3904/2N3906.
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.
The ADM1023 communicates over a 2-wire serial interface
compatible with SMBus standards. Under and over temperature limits can be programmed into the device 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.
FUNCTIONAL BLOCK DIAGRAM
ADDRESS POINTER
REGISTER
ONE-SHOT
REGISTER
CONVERSION RATE
REGISTER
OFFSET
REGISTERS
ON-CHIP
TEMPERATURE
SENSOR
D+
D–
LOCAL TEMPERATURE
VALUE REGISTER
ANALOG
MUX
A-TO-D
CONVERTER
BUSY
LOCAL TEMPERATURE
LOW-LIMIT COMPARATOR
LOCAL TEMPERATURE
LOW-LIMIT REGISTER
LOCAL TEMPERATURE
HIGH-LIMIT COMPARATOR
LOCAL TEMPERATURE
HIGH-LIMIT REGISTER
REMOTE TEMPERATURE
LOW-LIMIT REGISTERS
REMOTE TEMPERATURE
LOW-LIMIT COMPARATOR
RUN/STANDBY
REMOTE TEMPERATURE
HIGH-LIMIT REGISTERS
REMOTE TEMPERATURE
HIGH-LIMIT COMPARATOR
REMOTE TEMPERATURE
VALUE REGISTERS
CONFIGURATION
REGISTER
INTERRUPT
MASKING
EXTERNAL DIODE OPEN-CIRCUIT
STATUS REGISTER
ADM1023
NC
VDD
STBY
ALERT
SMBUS INTERFACE
NC
GND GND
NC
*Patents pending.
Pentium is a registered trademark of Intel Corporation.
NC
SDATA
NC
SCLK
ADD0
ADD1
NC = NO CONNECT
REV. A
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., 2000
ADM1023–SPECIFICATIONS (T = T
A
Parameter
POWER SUPPLY AND ADC
Temperature Resolution, Local Sensor
Temperature Resolution, Remote Sensor
Temperature Error, Local Sensor
Temperature Error, Remote Sensor
Relative Accuracy
Supply Voltage Range
Undervoltage Lockout Threshold
Undervoltage Lockout Hysteresis
Power-On Reset Threshold
POR Threshold Hysteresis
Standby Supply Current
Average Operating Supply Current
Autoconvert Mode, Averaged Over 4 Sec
Conversion Time
Remote Sensor Source Current
Min
1
0.125
–1.5
–3
–1
–3
3
2.55
0.9
65
120
7
D-Source Voltage
Address Pin Bias Current (ADD0, ADD1)
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 Start Condition Hold Time, tHD:STA
MIN
to TMAX1, VDD = 3.0 V to 3.6 V, unless otherwise noted)
Typ
± 0.5
±1
2.7
25
1.7
50
1
4
130
225
115
205
12
0.7
50
Max
+1.5
+3
+1
+3
0.25
3.6
2.8
2.2
5
200
330
170
300
16
2.2
Unit
Test Conditions/Comments
°C
°C
°C
°C
°C
°C
°C
V
V
mV
V
mV
µA
µA
µA
µA
ms
Guaranteed No Missed Codes
Guaranteed No Missed Codes
TA = 60°C to 100°C
TA = 0°C to 120°C
TA, TD = 60°C to 100°C (Note 2)
TA, TD = 0°C to 120°C (Note 2)
TA = 60°C to 100°C
Note 3
VDD Input, Disables ADC, Rising Edge
µA
µA
V
µA
VDD, Falling Edge (Note 4)
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 (Note 4)
Low Level (Note 4)
Momentary at Power-On Reset
V
VDD = 3 V to 5.5 V
V
VDD = 3 V to 5.5 V
SDATA Forced to 0.6 V
ALERT Forced to 0.4 V
4.7
4
4.7
4
mA
mA
µA
pF
kHz
µs
ns
ns
ns
SMBus Stop Condition Setup Time, tSU:STO
4
ns
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
SMBus Leakage Current
250
ns
0
4.7
1
µs
µs
µs
Between Start/Stop Condition
Master Clocking in Data
5
µA
VDD = 0 V
0.8
6
1
–1
+1
5
100
tLOW Between 10% Points
tHIGH Between 90% Points
Time from 10% of SDATA to 90%
of SCLK
Time from 90% of SCLK to 10%
of SDATA
Time for 10% or 90% of
SDATA to 10% of SCLK
NOTES
1
TMAX = 120°C, TMIN = 0°C.
2
TD is temperature of remote thermal diode; T A, TD = 60°C to 100°C.
3
Operation at V DD = 5 V guaranteed by design, not production tested.
4
Guaranteed by design, not production tested.
Specifications subject to change without notice.
–2–
REV. A
ADM1023
PIN FUNCTION DESCRIPTIONS
ABSOLUTE MAXIMUM RATINGS*
Positive Supply Voltage (VDD) to GND . . . . . . –0.3 V to +6 V
D+, ADD0, ADD1 . . . . . . . . . . . . . . . –0.3 V to VDD + 0.3 V
D– to GND . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to +0.6 V
SCLK, SDATA, ALERT, STBY . . . . . . . . . . . –0.3 V to +6 V
Input Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ± 50 mA
Input Current, D– . . . . . . . . . . . . . . . . . . . . . . . . . . . . ± 1 mA
ESD Rating, all pins (Human Body Model) . . . . . . . . 2000 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 10 sec) . . . . . . . . . . . . . . 300°C
IR Reflow Peak Temperature . . . . . . . . . . . . . . . . . . . . . 220°C
*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.
THERMAL CHARACTERISTICS
16-Lead QSOP Package
θJA = 105°C/W
θJC = 39°C/W
Pin No.
Mnemonic
Description
1, 5, 9,
13, 16
2
3
NC
No Connect.
VDD
D+
4
D–
6
ADD1
7, 8
10
GND
ADD0
11
ALERT
12
SDATA
14
15
SCLK
STBY
Positive supply, 3 V to 5.5 V.
Positive connection to remote temperature sensor.
Negative connection to remote temperature sensor.
Three-state logic input, higher bit of
device address.
Supply 0 V connection.
Three-state logic input, lower bit of
device address.
Open-drain logic output used as
interrupt or SMBus alert.
Logic input/output, SMBus serial
data. Open-drain output.
Logic input, SMBus serial clock.
Logic input selecting normal operation (high) or standby mode (low).
PIN CONFIGURATION
ORDERING GUIDE
Model
Temperature
Range
Package
Description
Package
Option
ADM1023ARQ
0°C to 120°C
16-Lead QSOP
RQ-16
16 NC
NC 1
15 STBY
VDD 2
D+ 3
D– 4
14 SCLK
ADM1023
13 NC
TOP VIEW
NC 5 (Not to Scale) 12 SDATA
ADD1 6
11 ALERT
GND 7
10 ADD0
GND 8
9
NC
NC = NO CONNECT
tHD;STA
tLOW
tR
tF
SCL
tHD;STA
tHD;DAT
tHIGH
tSU;STA
tSU;DAT
tSU;STO
SDA
tBUF
P
S
S
Figure 1. Diagram for Serial Bus Timing
REV. A
–3–
P
ADM1023–Typical Performance Characteristics
20
3
15
2
5
1
ERROR – ⴗC
TEMPERATURE ERROR – ⴗC
D+ TO GND
10
0
–5
–10
D+ TO VDD
0
–1
–15
–20
–2
–25
–30
1
10
LEAKAGE RESISTANCE – M⍀
–3
50
100
60
70
80
90
100
110
120
TEMPERATURE – ⴗC
Figure 2. Temperature Error vs. Resistance from Track to
VDD and GND
Figure 5. Temperature Error of ADM1023 vs. Pentium III
Temperature
5
14
TEMPERATURE ERROR – ⴗC
TEMPERATURE ERROR – ⴗC
12
4
250mV p-p REMOTE
3
2
100mV p-p REMOTE
10
8
6
4
2
1
0
–1
0
100
1k
10k
100k
1M
FREQUENCY – Hz
10M
100M
2
Figure 3. Remote Temperature Error vs. Supply Noise
Frequency
4
6
8
10
12
14
16
CAPACITANCE – nF
18
20
22
24
Figure 6. Temperature Error vs. Capacitance Between D+
and D–
9
70
100mV p-p
60
7
SUPPLY CURRENT – ␮A
TEMPERATURE ERROR – ⴗC
8
6
5
4
3
50mV p-p
50
40
VDD = 3.3V
30
20
2
10
1
VDD = 5V
25mV p-p
0
1
10
100
1k
10k
100k
FREQUENCY – Hz
1M
0
10M
1
100M
Figure 4. Temperature Error vs. Common-Mode Noise
Frequency
5
10
25
50
75
100 250
SCLK FREQUENCY – kHz
500
750 1000
Figure 7. Standby Supply Current vs. SCLK Frequency
–4–
REV. A
ADM1023
4
100
TEMPERATURE ERROR – ⴗC
80
SUPPLY CURRENT – ␮A
3
10mV p-p
2
1
60
40
20
0
–20
0
100k
1M
10M
FREQUENCY – Hz
100M
0
1G
Figure 8. Temperature Error vs. Differential-Mode Noise
Frequency
0.5
1.0
1.5
2.0
2.5
3.0
3.5
SUPPLY VOLTAGE – V
4.5
5.0
Figure 10. Standby Supply Current vs. Supply Voltage
125
550
REMOTE
TEMPERATURE
500
450
100
400
TEMPERATURE – ⴗC
SUPPLY CURRENT – ␮A
4.0
350
300
250
200
INT
TEMPERATURE
75
50
3.3 VOLTS
25
150
100
50
0.0625
5 VOLTS
0
0.125
0.25
0.5
1
2
CONVERSION RATE – Hz
4
8
0
Figure 9. Operating Supply Current vs. Conversion Rate,
VDD = 5 V and 3 V
FUNCTIONAL DESCRIPTION
The ADM1023 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 ADM1023
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 are stored in
the Local and Remote Temperature Value Registers. Only
the eight most significant bits of the local temperature value
are stored as an 8-bit binary word. The remote temperature value
is stored as an 11-bit, binary word in two registers. The eight
MSBs are stored in the Remote Temperature Value High Byte
Register at address 01h. The three LSBs are stored, left-justified,
in the Remote Temperature Value High Byte Register at
address 10h.
Error sources such as PCB track resistance and clock noise
can introduce offset errors into measurements on the Remote
Channel. To achieve the specified accuracy on this channel,
these offsets must be removed, and two Offset Registers are
provided for this purpose at addresses 11h and 12h.
An offset value may automatically be added to or subtracted
from the measurement by writing an 11 bit, two’s complement
REV. A
1
2
3
4
5
6
TIME – Seconds
7
8
9
10
Figure 11. Response to Thermal Shock
value to registers 11h (high byte) and 12h (low byte, leftjustified).
The offset registers default to zero at power-up and will have no
effect if nothing is written to them.
The measurement results are compared with Local and Remote,
High and Low Temperature Limits, stored in six on-chip Limit
Registers. As with the measured value, the local temperature
limits are stored as 8-bit values and the remote temperature limits
as 11-bit values. 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.
Registers can be programmed, and the device controlled and
configured, via the serial System Management Bus. The contents of any register can also be read back via the SMBus.
Control and configuration functions consist of:
• Switching the device between normal operation and standby
mode.
• Masking or enabling the ALERT output.
• Selecting the conversion rate.
On initial power-up the remote and local temperature values
default to –128°C. Since the device normally powers up converting, a measure of local and remote temperature is made and these
–5–
ADM1023
VDD
I
NⴛI
IBIAS
D+
REMOTE
SENSING
TRANSISTOR
VOUT+
TO ADC
C1*
BIAS
DIODE
D–
VOUT–
LOW-PASS FILTER
fC = 65kHz
* CAPACITOR C1 IS OPTIONAL. IT IS ONLY NECESSARY IN NOISY ENVIRONMENTS.
C1 = 2.2nF TYPICAL, 3nF MAX.
Figure 12. Input Signal Conditioning
Figure 12 shows the input signal conditioning used to measure
the output of an external temperature sensor. This figure shows
the external sensor as a substrate PNP 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 from 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.
values are then stored before a comparison with the stored limits is
made. However, if the part is powered up in standby mode (STBY
pin pulled low), no new values are written to the register before
a comparison is made. As a result, both RLOW and LLOW are
tripped in the Status Register thus generating an ALERT output.
This may be cleared in one of two ways:
1. Change both the local and remote lower limits to –128°C
and read the status register (which in turn clears the ALERT
output).
2. Take the part out of standby and read the status register
(which in turn clears the ALERT output). This will work
only if the measured values are within the limit values.
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. Thus, the temperature
may be obtained from a direct measurement of VBE where,
SOURCES OF ERRORS ON THERMAL
TRANSISTOR MEASUREMENT METHOD
EFFECT OF IDEALITY FACTOR (n)
The effects of ideality factor (n) and beta (Beta) of the temperature
measured by a thermal transistor are discussed below. For a thermal transistor implemented on a submicron process, such as the
substrate PNP used on a Pentium III processor, the temperature
errors due to the combined effect of the ideality factor and beta are
shown to be less than 3°C. Equation 2 is optimized for a substrate PNP transistor (used as a thermal diode) usually found on
CPUs designed on submicron CMOS processes such as the
Pentium III Processor. There is a thermal diode on board each of
these processors. The n in the Equation 2 represents the ideality
factor of this thermal diode. This ideality factor is a measure of the
deviation of the thermal diode from ideal behavior.
nKT
(I )
VBE =
× ln C
(1)
q
IS
Unfortunately, this technique requires calibration to null out
the effect of the absolute value of VBE, which varies from device
to device.
The technique used in the ADM1023 is to measure the change
in VBE when the device is operated at two different collector
currents.
This is given by:
∆VBE =
nKT
× ln ( N )
q
According to Pentium III Processor manufacturing specifications, measured values of n at 100°C are:
(2)
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 collector currents
n is the ideality factor of the thermal diode (TD)
nMIN = 1.0057 < nTYPICAL = 1.008 < nMAX = 1.0125
The ADM1023 takes this ideality factor into consideration
when calculating temperature TTD of the thermal diode. The
ADM1023 is optimized for nTYPICAL = 1.008; any deviation
on n from this typical value causes a temperature error that is
calculated below for the nMIN and nMAX of a Pentium III Processor
at TTD = 100°C,
To measure ∆VBE, the sensor is switched between operating currents of I and NI. The resulting waveform is passed through a
low-pass filter to remove noise, then 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, which gives a temperature output
in binary format. To further reduce the effects of noise, digital
filtering is performed by averaging the results of 16 measurement
cycles. Signal conditioning and measurement of the internal
temperature sensor is performed in a similar manner.
∆TMIN =
1.0057 – 1.008
∆TMAX =
1.0125 – 1.008
1.008
1.008
× (273.15 Kelvin + 100°C ) = –0.85°C
× (273.15 Kelvin + 100°C ) = +1.67°C
Thus, the temperature error due variation on n of the thermal
diode for Pentium III Processor is about 2.5°C.
–6–
REV. A
ADM1023
In general, this additional temperature error of the thermal diode
measurement due to deviations on n from its typical value is
given by,
∆T =
n – 1.008
× (273.15 Kelvin + TTD ), where TTD is in °C
1.008
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.
Table II. Extended Temperature Resolution (Remote
Temperature Low Byte)
BETA OF THERMAL TRANSISTOR (␤)
On Figure 12, the thermal diode is a substrate PNP transistor
where the emitter current is being forced into the device. The
derivation of Equation 2 above assumed that the collector currents scaled by “N” as the emitter currents were also scaled by
“N.” In other words, this assumes that beta (β) of the transistor
is constant for various collector currents. The plot below shows
typical beta variation versus collector current for Pentium III
Processors at 100°C. The maximum beta is 4.5 and varies less
than 1% over the collector current range from 7 µA to 300 µA.
␤MAX < 4.5
Extended
Resolution (ⴗC)
Remote Temperature
Low Byte
0.000
0.125
0.250
0.375
0.500
0.625
0.750
0.875
0000 0000
0010 0000
0100 0000
0110 0000
1000 0000
1010 0000
1100 0000
1110 0000
IE
REGISTER FUNCTIONS
⌬␤
␤
IC =
7
300
␤
␤+1
IE
IC (mA)
Figure 13. Variation of β with Collector Currents
Expressing the collector current in terms of the emitter current,
IC = IE [β/β + 1)] where β(300 µA) = β(7 µA)(1 + ε ), ε = ∆β/β
and β = β (7 µA). Rewriting the equation for ∆VBE, to include
the ideality factor “n” and beta “β” we have,
 (1 + ε ) × (β + 1)

nKT
∆VBE =
× ln 
× N
(3)
q
+
+
(
1
ε
)
β
1


Beta variations of less than 1% (ε < 0.01) contribute to temperature errors of less than 0.4°C.
TEMPERATURE DATA FORMAT
One LSB of the ADC corresponds to 0.125°C, so the ADM1023
can measure from 0°C to 127.875°C. The temperature data format is shown in Tables I and II.
Table I. Temperature Data Format (Local Temperature
and Remote Temperature High Byte)
Temperature (ⴗC)
Digital Output
0
1
10
25
50
75
100
125
127
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
Note: The ADM1023 differs from the ADM1021 in that the temperature resolution of the remote channel is improved from 1°C
to 0.125°C, but it cannot measure temperatures below 0°C. If
negative temperature measurement is required, the ADM1021
should be used.
REV. A
The ADM1023 contains 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 III to VII. It should be noted that most of the
ADM1023’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 14h are reserved for future use
or used for factory test purposes and should not be written to.
Address Pointer Register
The Address Pointer Register itself does not have, nor does it
require, an address, as it is the register to which the first data
byte of every Write operation is written automatically. 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.
Value Registers
The ADM1023 has three 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.
The Offset Register
Two offset registers are provided at addresses 11h and 12h.
These are provided so that the user may remove errors from the
measured values of remote temperature. These errors may be
introduced by clock noise and PCB track resistance.
The offset value is stored as an 11-bit, two’s complement value
in Registers 11h (high byte) and 12h (low byte, left-justified).
The value of the offset is negative if the MSB of 11h is 1 and is
positive if the MSB of 11h is 0. This value is added to the remote
temperature. These registers default to zero at power-up and
will have no effect if nothing is written to them. The offset register can accept values from –128.875°C to +127.875°C. The
ADM1023 detects overflow so the remote temperature value
register won’t wrap around +127°C or –128°C. Table IV contains a set of example offset values.
–7–
ADM1023
Table III. List of ADM1023 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
13
14
19
20
FE
FF
Not Applicable
Not Applicable
Not Applicable
Not Applicable
09
0A
0B
0C
0D
0E
0F1
Not Applicable
11
12
13
14
Not Applicable
21
Not Applicable
Not Applicable
Address Pointer
Local Temperature Value
Remote Temperature Value High Byte
Status
Configuration
Conversion Rate
Local Temperature High Limit
Local Temperature Low Limit
Remote Temperature High Limit High Byte
Remote Temperature Low Limit High Byte
One-Shot
Remote Temperature Value Low Byte
Remote Temperature Offset High Byte
Remote Temperature Offset Low Byte
Remote Temperature High Limit Low Byte
Remote Temperature Low Limit Low Byte
Reserved
Reserved
Manufacturer Device ID
Die Revision Code
Undefined
1000 0000 (80h) (–128°C)
1000 0000 (80h) (–128°C)
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)
0000 0000
0000 0000
0000 0000
0000 0000
0000 0000
0000 0000
Undefined
0100 0001 (41h)
0011 xxxx (3xh)
NOTE
1
Writing to address 0F causes the ADM1023 to perform a single measurement. It is not a data register as such and it does not matter what data is written to it.
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.
Table IV.
Remote
Temperature
(Including
Offset)
Remote
Temperature
(Without
Offset)
1111 1100 0000 0000 –4°C
14°C
18°C
1111 1111 0000 0000 –1°C
17°C
18°C
Bit
Name
Function
1111 1111 1110 0000 –0.125°C 17.875°C
18°C
0000 0000 0000 0000 0°C
18°C
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.
Offset Registers
11h
12h
Offset
Value
18°C
0000 0000 0010 0000 +0.125°C 18.125°C
18°C
0000 0001 0000 0000 +1°C
19°C
18°C
0000 0100 0000 0000 +4°C
22°C
18°C
Table V. Status Register Bit Assignments
*These flags stay high until the status register is read or they are reset by POR.
Status Register
Configuration Register
Bit 7 of the Status Register indicates that the ADC is busy converting when it is high. Bits 6 to 3 are flags that indicate the
results of the limit comparisons.
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. In standby mode the values of remote
and local temperature remain at the value they were before the
part was placed in standby.
If the local and/or remote temperature measurement is above
the corresponding high temperature limit, or below the corresponding low temperature limit, 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 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.
–8–
REV. A
ADM1023
Table VI. Configuration Register Bit Assignments
Power-On
Default
Bit
Name
Function
7
MASK1
6
RUN/STOP
0 = ALERT Enabled
1 = ALERT Masked
0 = Run
1 = Standby
Reserved
5–0
0
and/or to avoid conflict with other devices. Although only two
address pins are provided, these are three-state, and can be
grounded, left unconnected, or tied to VDD, so that a total of
nine different addresses are possible, as shown in Table VIII.
It should be noted that the state of the address pins is only sampled
at power-up, so changing them after power-up will have no effect.
0
0
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 VII.
Table VIII. Device Addresses
ADD0
ADD1
Device Address
0
0
0
NC
NC
NC
1
1
1
0
NC
1
0
NC
1
0
NC
1
0011 000
0011 001
0011 010
0101 001
0101 010
0101 011
1001 100
1001 101
1001 110
ADD0, ADD1 sampled at power-up only.
Table VII. Conversion Rate Register Codes
Data
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
Average Supply Current
␮A Typ at VCC = 3.3 V
150
150
150
150
150
150
160
180
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 an 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.
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.
Limit Registers
The ADM1023 has six 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
as a limit of 80°C, measuring 81°C will result in an alarm condition. Even though the temperature range is 0 to 127°C, it is
possible to program the Limit Register with negative values.
This is for backwards-compatibility with the ADM1021.
One-Shot Register
The one-shot register is used to initiate a single conversion and
comparison cycle when the ADM1023 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 one-shot conversion. The data written to this address is irrelevant and is not stored.
SERIAL BUS INTERFACE
Control of the ADM1023 is carried out via the serial bus. The
ADM1023 is connected to this bus as a slave device, under the
control of a master device.
ADDRESS PINS
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 ADM1023 has two
address pins, ADD0 and ADD1, to allow selection of the device
address, so that several ADM1023s can be used on the same bus,
REV. A
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.
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 ninth 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.
–9–
ADM1023
1
9
9
1
SCLK
0
SDATA
1
0
1
1
A1
A0
D6
D7
R/W
D5
D4
D2
D3
D1
D0
ACK. BY
ADM1023
START BY
MASTER
ACK. BY
ADM1023
FRAME 1
SERIAL BUS ADDRESS BYTE
FRAME 2
ADDRESS POINTER REGISTER BYTE
1
9
SCLK (CONTINUED)
D7
SDATA (CONTINUED)
D5
D6
D4
D3
D2
D1
D0
ACK. BY STOP BY
ADM1023 MASTER
FRAME 3
DATA BYTE
Figure 14. Writing a Register Address to the Address Pointer Register, then Writing Data to the Selected Register
1
9
9
1
SCLK
SDATA
0
1
0
1
1
A1
A0
D6
D7
R/W
D5
D4
D3
D2
D1
D0
ACK. BY
ADM1023
ACK. BY
ADM1023
START BY
MASTER
FRAME 1
SERIAL BUS ADDRESS BYTE
STOP BY
MASTER
FRAME 2
ADDRESS POINTER REGISTER BYTE
Figure 15. Writing to the Address Pointer Register Only
9
1
9
1
SCLK
SDATA
A6
A5
A4
A3
A2
A1
A0
R/W
START BY
MASTER
D7
D6
D5
D4
D3
D2
D0
NO ACK.
BY MASTER
ACK. BY
ADM1023
FRAME 1
SERIAL BUS ADDRESS BYTE
D1
STOP BY
MASTER
FRAME 2
DATA BYTE FROM ADM1023
Figure 16. Reading Data from a Previously Selected Register
In the case of the ADM1023, write operations contain either
one or two bytes, while read operations contain one byte and
perform the following functions:
as before, but only the data byte containing the register read
address is sent, as data is not to be written to the register.
This is shown in Figure 15.
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, the write
operation contains a second data byte that is written to the register selected by the address pointer register.
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 15.
This is illustrated in Figure 14. 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 are two possibilities:
1. If the ADM1023’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 ADM1023
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 15 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.
2. Do not forget that ADM1023 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.
–10–
REV. A
ADM1023
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
open-circuit. 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 ADM1023 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 normally cannot signal to the master 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°C (1000 0000 000). Since the normal
operating temperature range of the device only extends down
to 0°C, this output code will never be seen in normal operation,
so it can be interpreted as a fault condition.
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 17.
MASTER
RECEIVES
SMBALERT
START
ALERT RESPONSE ADDRESS
RD
ACK
MASTER SENDS
ARA AND READ
COMMAND
DEVICE ADDRESS
NO
ACK
STOP
DEVICE SENDS
ITS ADDRESS
Figure 17. Use of SMBALERT
1. SMBALERT pulled low.
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.
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 ADM1023 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 ADM1023 can be put into a low power standby mode using
hardware or software, that is, by taking the STBY input low, or by
setting Bit 6 of the Configuration Register. When STBY is high, or
Bit 6 is low, the ADM1023 operates normally. When STBY is
pulled low or 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.
These two modes are similar but not identical. When STBY is
low, conversions are completely inhibited. When Bit 6 is set but
STBY is high, a one-shot conversion of both channels can be
initiated by writing any data value to the One-Shot Register
(Address 0Fh).
REV. A
In this respect, the ADM1023 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.
If the external diode channel is not being used and is shorted
out, the resulting ALERT may be cleared by writing 80h (–128°C)
to the low limit register.
APPLICATIONS INFORMATION
FACTORS AFFECTING ACCURACY
Remote Sensing Diode
The ADM1023 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, 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.
Thermal Inertia and Self-Heating
Accuracy depends on the temperature of the remote-sensing
diode and/or the internal temperature sensor being at the same
temperature as that being measured; and a number of factors
can affect this. Ideally, the sensor should be in good thermal
contact with the part of the system being measured, for example
the processor. If it is not, the thermal inertia caused by the mass
of the sensor will cause a lag in the response of the sensor to a
temperature change. In the case of the remote sensor this should
not be a problem, as it will be either a substrate transistor in the
processor or a small package device such as SOT-23 placed in
close proximity to it.
The on-chip sensor, however, will often be remote from the processor and will only be monitoring the general ambient temperature
–11–
ADM1023
around the package. The thermal time constant of the QSOP-16
package is about 10 seconds.
APPLICATION CIRCUITS
In practice, the package will have electrical, and hence thermal,
connection to the printed circuit board, so the temperature rise
due to self-heating will be negligible.
The SCLK and SDATA pins of the ADM1023 can be interfaced
directly to the SMBus of an I/O chip. Figure 20 shows how the
ADM1023 might be integrated into a system using this type of
I/O controller.
LAYOUT CONSIDERATIONS
Digital boards can be electrically noisy environments, and the
ADM1023 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:
0.1␮F
VDD
1. Place the ADM1023 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 four to eight 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.
ADM1023
3V
TO 5.5V
10k⍀ 10k⍀ 10k⍀
D+
SCLK
IN
SDATA
I/O
2200pF
TO
CONTROL
CHIP
D–
SHIELD
2N3904
ALERT
C00058–0–6/00 (rev. A)
Figure 19 shows a typical application circuit for the ADM1023,
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.
OUT
SET TO
REQUIRED
ADDRESS
ADD0
ADD1
GND
3. Use wide tracks to minimize inductance and reduce noise
pickup. 10 mil track minimum width and spacing is
recommended.
Figure 19. Typical ADM1023 Application Circuit
D–
10MIL
D+
10MIL
SYSTEM BUS
10MIL
DISPLAY
10MIL
GND
Figure 18. Arrangement of Signal Tracks
CD ROM
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.
SYSTEM
MEMORY
GMCH
DISPLAY
CACHE
10MIL
PCI SLOTS
HARD
DISK
ICH I/O
CONTROLLER
HUB
2 IDE PORTS
PCI BUS
SUPER I/O
SMBUS
USB USB
Thermocouple effects should not be a major problem as 1°C
corresponds to about 240 µV, and thermocouple voltages are
about 3 µV/°C of temperature difference. Unless there are
two thermocouples with a big temperature differential between
them, thermocouple voltages should be much less than 240 µV.
FWH
(FIRMWARE
HUB)
2 USB PORTS
Figure 20. Typical System Using ADM1023
OUTLINE DIMENSIONS
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
ADM1023.
Dimensions shown in inches and (mm).
16-Lead QSOP
(RQ-16)
6. If the distance to the remote sensor is more than eight inches,
the use of twisted pair cable is recommended. This will work
up to about 6 to 12 feet.
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 ADM1023. Leave the remote end of the shield unconnected to avoid ground loops.
0.197 (5.00)
0.189 (4.80)
9
16
0.244 (6.20)
0.228 (5.79)
0.157 (3.99)
0.150 (3.81)
1
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.
Cable resistance can also introduce errors. 1 Ω series resistance
introduces about 1°C error.
8
PIN 1
0.059 (1.50)
MAX
0.010 (0.25)
0.004 (0.10)
–12–
PRINTED IN U.S.A.
D–
ADM1023
SCLK
PROCESSOR
10MIL
SDATA
10MIL
D+
ALERT
GND
0.025
(0.64)
BSC
0.069 (1.75)
0.053 (1.35)
8ⴗ
0ⴗ
0.012 (0.30)
SEATING 0.010 (0.20)
0.008 (0.20) PLANE
0.007 (0.18)
0.050 (1.27)
0.016 (0.41)
REV. A