AD ADT7460ARQ

a
dB COOL™ Remote Thermal
Controller and Fan Controller
ADT7460*
FEATURES
Controls and Monitors up to 4 Fan Speeds
1 On-Chip and 2 Remote Temperature Sensors
Dynamic TMIN Control Mode Optimizes System Acoustics
Intelligently
Automatic Fan Speed Control Mode Controls System
Cooling Based on Measured Temperature
Enhanced Acoustic Mode Dramatically Reduces User
Perception of Changing Fan Speeds
Thermal Protection Feature via THERM Output
Monitors Performance Impact of Intel® Pentium® 4
Processor Thermal Control Circuit via THERM Input
2-Wire and 3-Wire Fan Speed Measurement
Limit Comparison of All Monitored Values
Meets SMBus 2.0 Electrical Specifications
(Fully SMBus 1.1 Compliant)
GENERAL DESCRIPTION
The ADT7460 dBCOOL controller is a thermal monitor and
multiple PWM fan controller for noise-sensitive applications
requiring active system cooling. It can monitor the temperature
of up to two remote sensor diodes, plus its own internal temperature. It can measure and control the speed of up to four
fans so that they operate at the lowest possible speed for minimum acoustic noise. The Automatic Fan Speed Control Loop
optimizes fan speed for a given temperature. A unique Dynamic
TMIN Control Mode enables the system thermals/acoustics
to be intelligently managed. The effectiveness of the system’s
thermal solution can be monitored using the THERM input.
The ADT7460 also provides critical Thermal Protection to the
system using the bidirectional THERM pin as an output to
prevent system or component overheating.
APPLICATIONS
Low Acoustic Noise PCs
Networking and Telecommunications Equipment
FUNCTIONAL BLOCK DIAGRAM
ADDR
SELECT ADDR EN SCL SDA SMBALERT
SMBUS
ADDRESS
SELECTION
PWM1
PWM2
PWM3
PWM
REGISTERS
AND
CONTROLLERS
SERIAL BUS
INTERFACE
AUTOMATIC
FAN SPEED
CONTROL
ACOUSTIC
ENHANCEMENT
CONTROL
DYNAMIC
TMIN
CONTROL
TACH1
TACH2
ADDRESS
POINTER
REGISTER
PWM
CONFIGURATION
REGISTERS
FAN SPEED
COUNTER
TACH3
TACH4
INTERRUPT
MASKING
PERFORMANCE
MONITORING
THERMAL
PROTECTION
THERM
VCC
INTERRUPT
STATUS
REGISTERS
VCC TO ADT7460
ADT7460
D1+
D1–
10-BIT
ADC
INPUT
SIGNAL
CONDITIONING
AND
ANALOG
MULTIPLEXER
D2+
D2–
+2.5VIN
BAND GAP
REFERENCE
BAND GAP
TEMP. SENSOR
LIMIT
COMPARATORS
VALUE AND
LIMIT
REGISTERS
GND
*Protected by U.S. Patent Nos. 6,188,189; 6,169,442; 6,097,239; 5,982,221; and 5,867,012. Other patents pending.
dBCOOL is a trademark of Analog Devices, Inc.
Intel and Pentium are registered trademarks of Intel Corp.
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 that 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
www.analog.com
Fax: 781/326-8703
© Analog Devices, Inc., 2002
ADT7460–SPECIFICATIONS1, 2, 3, 4
(TA = TMIN to TMAX, VCC = VMIN to VMAX, unless otherwise noted.)
Parameter
Min
Typ
Max
Unit
Test Conditions/Comments
POWER SUPPLY
Supply Voltage
Supply Current, ICC
3.0
5.0
5.5
3
20
V
mA
µA
Interface Inactive, ADC Active
Standby Mode
± 1.5
±3
C
C
C
C
C
C
C
µA
µA
TEMPERATURE-TO-DIGITAL CONVERTER
Local Sensor Accuracy
Resolution
Remote Diode Sensor Accuracy
0.25
Resolution
Remote Sensor Source Current
0.25
180
11
ANALOG-TO-DIGITAL CONVERTER
(INCLUDING MUX AND ATTENUATORS)
Total Unadjusted Error, TUE
Differential Nonlinearity, DNL
Power Supply Sensitivity
Conversion Time (Voltage Input)
Conversion Time (Local Temperature)
Conversion Time (Remote Temperature)
Total Monitoring Cycle Time
Total Monitoring Cycle Time
Input Resistance
± 1.5
± 2.5
±3
80
± 0.1
11.38
12.09
25.59
120.17
13.51
140
FAN RPM-TO-DIGITAL CONVERTER
Accuracy
± 1.5
±1
13
13.5
28
134.5
15
200
±7
± 11
± 13
65,535
Full-Scale Count
Nominal Input RPM
%
LSB
%/V
ms
ms
ms
ms
ms
kΩ
0C TA 70C
–40C TA +120C
0C TA 70C; 0C TD 120C
0C TA 105C; 0C TD 120C
0C TA 120C; 0C TD 120C
High Level
Low Level
8 Bits
Averaging
Averaging
Averaging
Averaging
Averaging
Enabled
Enabled
Enabled
Enabled (incl. delay5)
Disabled
%
%
%
0C TA 70C
0C TA 105C
–40C TA +120C
Fan Count = 0xBFFF
Fan Count = 0x3FFF
Fan Count = 0x0438
Fan Count = 0x021C
109
329
5000
10000
90
97.2
RPM
RPM
RPM
RPM
kHz
OPEN-DRAIN DIGITAL OUTPUTS,
PWM1–PWM3, XTO
Current Sink, IOL
Output Low Voltage, VOL
High Level Output Current, IOH
0.1
8.0
0.4
1
mA
V
µA
IOUT = –8.0 mA, VCC = 3.3 V
VOUT = VCC
OPEN-DRAIN SERIAL DATA
BUS OUTPUT (SDA)
Output Low Voltage, VOL
High Level Output Current, IOH
0.1
0.4
1
V
µA
IOUT = –4.0 mA, VCC = 3.3 V
VOUT = VCC
0.4
V
V
mV
Internal Clock Frequency
SMBUS DIGITAL INPUTS
(SCL, SDA)
Input High Voltage, VIH
Input Low Voltage, VIL
Hysteresis
DIGITAL INPUT LOGIC LEVELS
(TACH INPUTS)
Input High Voltage, VIH
82.8
2.0
500
2.0
5.5
+0.8
Input Low Voltage, VIL
–0.3
Hysteresis
0.5
–2–
V
V
V
V
V p-p
Maximum Input Voltage
Minimum Input Voltage
REV. 0
ADT7460
Parameter
Min
DIGITAL INPUT LOGIC LEVELS
(THERM)
Input High Voltage, VIH
Input Low Voltage, VIL
Input High Voltage, VIH
Input Low Voltage, VIL
Typ
Max
1.7
0.8
0.8
0.4
DIGITAL INPUT CURRENT
Input High Current, IIH
Input Low Current, IIL
Input Capacitance, CIN
–1
+1
5
SERIAL BUS TIMING
Clock Frequency, fSCLK
Glitch Immunity, tSW
Bus Free Time, tBUF
Start Setup Time, tSU;STA
Start Hold Time, tHD;STA
SCL Low Time, tLOW
SCL High Time, tHIGH
SCL, SDA Rise Time, tR
SCL, SDA Fall Time, tF
Data Setup Time, tSU;DAT
Data Hold Time, tHD;DAT
Detect Clock Low Timeout, tTIMEOUT
10
100
50
4.7
4.7
4.0
4.7
4.0
50
1000
300
250
300
15
35
Unit
Test Conditions/Comment
V
V
V
V
Bit 6 (THLD) Reg. 0x43 = 0
(VID Threshold = 1 V)
Bit 6 (THLD) Reg. 0x43 = 1
(VID Threshold = 0.6 V)
µA
µA
pF
VIN = VCC
VIN = 0
kHz
ns
µs
µs
µs
µs
µs
ns
µs
ns
ns
ms
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
See Figure 1
Can be optionally disabled
NOTES
1
All voltages are measured with respect to GND, unless otherwise specified.
2
Typicals are at T A = 25°C and represent the most likely parametric norm.
3
Logic inputs will accept input high voltages up to V MAX even when the device is operating down to V MIN.
4
Timing specifications are tested at logic levels of V IL = 0.8 V for a falling edge and V IH = 2.0 V for a rising edge.
5
The delay is the time between the round robin finishing one set of measurements and starting the next.
Specifications subject to change without notice.
tR
tF
tHD;STA
tLOW
SCL
tHD;STA
tHD;DAT
tHIGH
tSU;STA
tSU;STO
tSU;DAT
SDA
tBUF
P
S
S
Figure 1. Diagram for Serial Bus Timing
REV. 0
–3–
P
ADT7460
ABSOLUTE MAXIMUM RATINGS*
ORDERING GUIDE
Positive Supply Voltage (VCC) . . . . . . . . . . . . . . . . . . . . . 6.5 V
Voltage on Any Other Input or Output Pin . . . . –0.3 V to +6.5 V
Input Current at Any Pin . . . . . . . . . . . . . . . . . . . . . . . ± 5 mA
Package Input Current . . . . . . . . . . . . . . . . . . . . . . . ± 20 mA
Maximum Junction Temperature (TJ max) . . . . . . . . . . 150°C
Storage Temperature Range . . . . . . . . . . . . –65°C to +150°C
Lead Temperature, Soldering
IR Reflow Peak Temp . . . . . . . . . . . . . . . . . . . . . . . . 220°C
Lead Temp (soldering 10 sec) . . . . . . . . . . . . . . . . . . 300°C
ESD Rating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1500 V
Model
Temperature
Range
Package
Description
Package
Option
ADT7460ARQ
–40C to 120C
16-Lead QSOP
RQ-16
*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 = 150°C/W, θJC = 39°C/W
CAUTION
ESD (electrostatic discharge) sensitive device. Electrostatic charges as high as 4000 V readily
accumulate on the human body and test equipment and can discharge without detection. Although the
ADT7460 features proprietary ESD protection circuitry, permanent damage may occur on devices
subjected to high energy electrostatic discharges. Therefore, proper ESD precautions are recommended
to avoid performance degradation or loss of functionality.
–4–
REV. 0
ADT7460
PIN CONFIGURATION
SCL 1
16
SDA
GND 2
15
PWM1/XTO
VCC 3
TACH3 4
ADT7460
14
2.5V/SMBALERT
13
D1+
TOP VIEW
12 D1–
(Not to Scale)
TACH1 6
11 D2+
PWM2/SMBALERT 5
TACH2
7
10
PWM3/ADDRESS ENABLE
8
9
D2–
TACH4/ADDRESS SELECT/THERM
PIN FUNCTION DESCRIPTIONS
Pin No. Mnemonic
Description
1
2
3
SCL
GND
VCC
4
TACH3
5
PWM2
SMBALERT
6
TACH1
7
TACH2
8
PWM3
ADDRESS
ENABLE
TACH4
Digital Input (Open Drain). SMBus serial clock input. Requires SMBus pull-up.
Ground Pin for the ADT7460.
Power Supply. Can be powered by 3.3 V standby if monitoring in low power states is required. VCC is also
monitored through this pin. The ADT7460 can also be powered from a 5 V supply. Setting Bit 7 of
Configuration Register 1 (Reg. 0x40) rescales the VCC input attenuators to correctly measure a 5 V supply.
Digital Input (Open Drain). Fan tachometer input to measure speed of FAN 3. Can be reconfigured as an
analog input (AIN3) to measure the speed of 2-wire fans.
Digital Output (Open Drain). Requires 10 kΩ typical pull-up. Pulsewidth modulated output to control FAN 2 speed.
Digital Output (Open Drain). This pin may be reconfigured as an SMBALERT interrupt output to signal
out-of-limit conditions.
Digital Input (Open Drain). Fan tachometer input to measure speed of FAN 1. Can be reconfigured as an analog
input (AIN1) to measure the speed of 2-wire fans.
Digital Input (Open Drain). Fan tachometer input to measure speed of FAN 2. Can be reconfigured as an analog
input (AIN2) to measure the speed of 2-wire fans.
Digital I/O (Open Drain). Pulsewidth modulated output to control FAN 3/4 speed. Requires 10 kΩ typical pull-up.
If pulled low on power-up, this places the ADT7460 into Address Select mode, and the state of Pin 9 will
determine the ADT7460’s slave address.
Digital Input (Open Drain). Fan tachometer input to measure speed of FAN 4. Can be reconfigured as an analog
input (AIN4) to measure the speed of 2-wire fans.
If in Address Select mode, this pin determines the SMBus device address.
9
ADDRESS
SELECT
THERM
10
11
12
13
14
15
16
REV. 0
Alternatively, the pin may be reconfigured as a bidirectional THERM pin. Can be used to time and monitor
assertions on the THERM input. For example, can be connected to the PROCHOT output of Intel’s Pentium 4
processor or to the output of a trip point temperature sensor. Can be used as an output to signal overtemperature
conditions.
D2–
Cathode Connection to Second Thermal Diode
D2+
Anode Connection to Second Thermal Diode
D1–
Cathode Connection to First Thermal Diode
D1+
Anode Connection to First Thermal Diode
+2.5VIN
Analog Input. Monitors +2.5 V supply, typically a chipset voltage.
SMBALERT Digital Output (Open Drain). This pin may be reconfigured as an SMBALERT interrupt output to signal
out-of-limit conditions.
PWM1/XTO Digital Output (Open Drain). Pulsewidth modulated output to control FAN 1 speed. Requires 10 kΩ typical pull-up.
SDA
Digital I/O (Open Drain). SMBus bidirectional serial data. Requires SMBus pull up.
–5–
ADT7460
FUNCTIONAL DESCRIPTION
General Description
INTERNAL REGISTERS OF THE ADT7460
A brief description of the ADT7460’s principal internal registers is given below. More detailed information on the function
of each register is given in Tables IV to XLI.
The ADT7460 is a thermal monitor and multiple fan controller
for any system requiring monitoring and cooling. The device
communicates with the system via a serial System Management
Bus. The serial bus controller has an optional address line for
device selection (Pin 9), a serial data line for reading and writing
addresses and data (Pin 16), and an input line for the serial
clock (Pin 1). All control and programming functions of the
ADT7460 are performed over the serial bus. In addition, two of the
pins can be reconfigured as an SMBALERT output to indicate
out-of-limit conditions.
Configuration Registers
The Configuration registers provide control and configuration
of the ADT7460, including alternate pinout functionality.
Address Pointer Register
This register contains the address that selects one of the other
internal registers. When writing to the ADT7460, the first byte
of data is always a register address, which is written to the
Address Pointer Register.
Measurement Inputs
Status Registers
The device has three measurement inputs, one for voltage and
two for temperature. It can also measure its own supply voltage
and can measure ambient temperature with its on-chip temperature sensor.
These registers provide the status of each limit comparison and
are used to signal out-of-limit conditions on the temperature,
voltage, or fan speed channels. If Pin 14 is configured as
SMBALERT, then this pin will assert low whenever an unmasked
status bit gets set.
Pin 14 is an analog input with an on-chip attenuator and is
configured to monitor 2.5 V.
Interrupt Mask Registers
Power is supplied to the chip via Pin 3, and the system also
monitors VCC through this pin. In PCs, this pin is normally
connected to a 3.3 V standby supply. This pin can, however, be
connected to a 5 V supply and monitor it without overranging.
These registers allow each interrupt status event to be masked
when Pin 14 is configured as an SMBALERT output.
Value and Limit Registers
The results of analog voltage input, temperature, and fan
speed measurements are stored in these registers, along with
their limit values.
Remote temperature sensing is provided by the D1 and D2
inputs, to which diode-connected, external temperature-sensing
transistors such as a 2N3904 or CPU thermal diode may be
connected.
Offset Registers
These registers allow each temperature channel reading to be
offset by a twos complement value written to these registers.
The ADC also accepts input from an on-chip band gap temperature sensor that monitors system ambient temperature.
TMIN Registers
Sequential Measurement
These registers program the starting temperature for each fan
under Automatic Fan Speed Control.
When the ADT7460 monitoring sequence is started, it cycles
sequentially through the measurement of 2.5 V input and the
temperature sensors. Measured values from these inputs are
stored in Value registers. These can be read out over the serial
bus, or can be compared with programmed limits stored in the
Limit registers. The results of out-of-limit comparisons are
stored in the Status registers, which can be read over the serial
bus to flag out-of-limit conditions.
TRANGE Registers
These registers program the temperature-to-fan speed control
slope in Automatic Fan Speed Control mode for each PWM output.
Operating Point Registers
These registers define the target operating temperatures for each
thermal zone when running under dynamic TMIN control. This
function allows the cooling solution to adjust dynamically in
response to measured temperature and system performance.
ADT7460 Address Selection
Pin 8 is the dual function PWM3/ADDRESS ENABLE pin.
If Pin 8 is pulled low on power-up, the ADT7460 will read the
state of Pin 9 (TACH4/ADDRESS SELECT/THERM pin) to
determine the ADT7460’s slave address. If Pin 8 is high on
power-up, then the ADT7460 will default to SMBus slave
address 0x2E. This function is described in more detail later.
Enhance Acoustics Registers
These registers allow each PWM output controlling fan to be
tweaked to enhance the system’s acoustics.
–6–
REV. 0
Typical Performance Characteristics–ADT7460
10
5
DXP TO GND
0
–5
DXP TO VCC (3.3V)
–10
–15
1
10
30
3.3
LEAKAGE RESISTANCE – M⍀
REMOTE TEMPERATURE
ERROR (ⴗC)
–6
–9
–12
–15
–18
–21
–24
–27
–30
2.2
3.3
4.7
10
22
DXP–DXN CAPACITANCE – nF
TPC 2. Temperature Error vs.
Capacitance between D+ and D–
REMOTE TEMPERATURE – ⴗC
0
–3 SIGMA
–1
–2
10
8
6
–3
–40
2
0
10
60
TEMPERATURE – C
110
TPC 4. Local Temperature Error vs.
Actual Temperature
250mV
4
LOW LIMIT
–2.0
100k
100mV
5M
550k
FREQUENCY – Hz
50M
TPC 5. Remote Temperature Error
vs. Power Supply Noise Frequency
1.9
REMOTE TEMPERATURE ERROR – ⴗC
1.8
1.7
1.7
1.6
1.6
1.5
1.5
1.4
1.4
2.6
2.5
3.0
3.4
3.8
4.2
4.6
5.0
SUPPLY VOLTAGE – V
TPC 7. Supply Current vs.
Supply Voltage
REV. 0
5.4
5.5
–2
LOW LIMIT
14
10
8
10mV
4
2
0
–2.0
60k 110k
110
7.5
250mV
5.0
2.5
0
100mV
–2.5
–5.0
100k
5M
550k
FREQUENCY – Hz
50M
TPC 6. Local Temperature Error vs.
Power Supply Noise Frequency
40
20mV
12
6
10
60
TEMPERATURE – C
10.0
16
1.8
–3 SIGMA
–1
12.5
12
+3 SIGMA
1
+3 SIGMA
0
TPC 3. Remote Temperature Error
vs. Actual Temperature
LOCAL TEMPERATURE ERROR – ⴗC
HIGH LIMIT
HIGH LIMIT
1
–3
–40
47
14
2
2
–33
1
3
TEMPERATURE ERROR – C
–3
–36
100
TPC 1. Temperature Error vs.
Leakage Resistance
SUPPLY CURRENT – mA
3
REMOTE TEMPERATURE ERROR – ⴗC
–20
3
0
TEMPERATURE ERROR – C
REMOTE TEMPERATURE ERROR – ⴗC
REMOTE TEMPERATURE ERROR – ⴗC
15
1M
10M
FREQUENCY – Hz
50M
TPC 8. Remote Temperature Error
vs. Differential Mode Noise
Frequency
–7–
35
100mV
30
25
20
15
10
40mV
5
0
20mV
–5
–10
10k
100k
1M
FREQUENCY – Hz
10M
TPC 9. Remote Temperature Error
vs. Common-Mode Noise
Frequency
ADT7460
FRONT
CHASSIS
FAN
ADT7460
TACH2
PWM1
TACH1
PWM3
REAR
CHASSIS
FAN
TACH3
D2+
D2–
THERM
AMBIENT
TEMPERATURE
PROCHOT
D1+
SDA
D1–
SCL
SMBALERT
GND
Figure 2. Recommended Implementation
• Ambient temperature measured through Remote 2 temperature channel
RECOMMENDED IMPLEMENTATION
Configuring the ADT7460 as in Figure 2 allows the systems
designer the following features:
• Two PWM outputs for fan control of up to three fans (the
front and rear chassis fans are connected in parallel)
• Bidirectional THERM Pin. Allows Intel P4 PROCHOT
Monitoring and can function as an overtemperature
THERM output.
• Three TACH fan speed measurement inputs
• SMBALERT system interrupt output
• VCC measured internally through Pin 3
• CPU temperature measured using Remote 1 temperature
channel
–8–
REV. 0
ADT7460
The facility to make hardwired changes to the SMBus slave
address allows the user to avoid conflicts with other devices
sharing the same serial bus, for example, if more than one
ADT7460 is used in a system.
SERIAL BUS INTERFACE
Control of the ADT7460 is carried out using the serial System
Management bus (SMBus). The ADT7460 is connected to this
bus as a slave device, under the control of a master controller.
The ADT7460 has a 7-bit serial bus address. When the device
is powered up with Pin 8 (PWM3/Address Enable) high, the
ADT7460 will have a default SMBus address of 0101110 or
0x2E. If more than one ADT7460 is to be used in a system,
then each ADT7460 should be placed in Address Select Mode
by strapping Pin 8 low on power-up. The logic state of Pin 9
then determines the device’s SMBus address.
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 while 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 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.
The device address is sampled and latched on the first valid
SMBus transaction, so any attempted addressing changes made
thereafter will have no immediate effect.
VCC
Table I. Address Select Mode
Pin 8 State
Pin 9 State
0
0
1
ADT7460
Address
Low (10 kΩ to GND)
High (10 kΩ pull-up)
Don’t Care
0101100 (2Ch)
0101101 (2Dh)
0101110 (2Eh)
(default)
ADDR_SEL
PWM3/ADDR_EN
10k⍀
9
8
ADDRESS = 0x2D
Figure 5. SMBus Address = 0x2D (Pin 9 = 1)
VCC
ADT7460
VCC
ADDR_SEL
9
10k⍀
ADT7460
8
PWM3/ADDR_EN
ADDR_SEL
ADDRESS = 0x2E
10k⍀
9
8
PWM3/ADDR_EN
Figure 3. Default SMBus Address = 0x2E
ADT7460
ADDR_SEL
PWM3/ADDR_EN
9
NC
DO NOT LEAVE ADDR_EN
UNCONNECTED! CAN
CAUSE UNPREDICTABLE
ADDRESSES
CARE SHOULD BE TAKEN TO ENSURE THAT PIN 8
(PWM3/ADDR_EN) IS EITHER TIED HIGH OR LOW. LEAVING PIN 8
FLOATING COULD CAUSE THE ADT7460 TO POWER UP WITH AN
UNEXPECTED ADDRESS.
NOTE THAT IF THE ADT7460 IS PLACED INTO ADDRESS SELECT
MODE, PINS 8 AND 9 CAN BE USED AS THE ALTERNATE FUNCTIONS (PWM3, TACH4/THERM) ONLY IF THE CORRECT CIRCUIT IS
MUXED IN AT THE CORRECT TIME
10k⍀
8
ADDRESS = 0x2C
Figure 6. Unpredictable SMBus Address if Pin 8
is Unconnected
Figure 4. SMBus Address = 0x2C (Pin 9 = 0)
1
9
9
1
SCL
SDA
0
1
0
1
1
A1
A0
START BY
MASTER
FRAME 1
SERIAL BUS ADDRESS
BYTE
D7
R/W
D6
D5
D4
D3
D2
D1
D0
ACK. BY
ADT7460
ACK. BY
ADT7460
FRAME 2
ADDRESS POINTER REGISTER BYTE
1
9
SCL (CONTINUED)
SDA (CONTINUED)
D7
D6
D5
D4
D3
FRAME 3
DATA
BYTE
D2
D1
D0
ACK. BY
ADT7460
STOP BY
MASTER
Figure 7. Writing a Register Address to the Address Pointer Register, Then Writing Data to the Selected Register
REV. 0
–9–
ADT7460
1
9
9
1
SCL
SDA
0
1
START BY
MASTER
0
1
1
A1
A0
D7
R/W
D6
D5
D4
D3
D2
D1
D0
ACK. BY
ADT7460
FRAME 1
SERIAL BUS ADDRESS
BYTE
ACK. BY
ADT7460
STOP BY
MASTER
FRAME 2
ADDRESS POINTER REGISTER BYTE
Figure 8. Writing to the Address Pointer Register Only
1
9
9
1
SCL
SDA
START BY
MASTER
0
1
0
1
1
A1
FRAME 1
SERIAL BUS ADDRESS
BYTE
A0
D7
R/W
D6
D5
D4
D3
D2
D1
ACK. BY
ADT7460
D0
NO ACK. BY STOP BY
MASTER
MASTER
FRAME 2
DATA BYTE FROM ADT7460
Figure 9. Reading Data from a Previously Selected Register
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, then 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.
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 tenth 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 tenth clock pulse, then high
during the tenth clock pulse to assert a STOP condition.
This is illustrated in Figure 7. The device address is sent over
the bus followed by R/W being 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 ADT7460’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 ADT7460
as before, but only the data byte containing the register address
is sent as data is not to be written to the register. This is
shown in Figure 8.
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 9.
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 8 can be omitted.
Notes
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.
In the case of the ADT7460, 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.
1. 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. However, 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. In Figures 7 to 9, the serial bus address is shown as the
default value 01011(A1)(A0), where A1 and A0 are set by
the Address Select Mode function previously defined.
3. In addition to supporting the Send Byte and Receive Byte
protocols, the ADT7460 also supports the Read Byte protocol
(see System Management Bus specifications Rev. 2.0 for
more information).
–10–
REV. 0
ADT7460
4. If it is required to perform several read or write operations in
succession, the master can send a repeat start condition
instead of a stop condition to begin a new operation.
ADT7460 READ OPERATIONS
ADT7460 WRITE OPERATIONS
This is useful when repeatedly reading a single register. The
register address needs to have been set up previously. In this
operation, the master device receives a single byte from a slave
device as follows:
1. The master device asserts a START condition on SDA.
2. The master sends the 7-bit slave address followed by the
read bit (high).
3. The addressed slave device asserts ACK on SDA.
4. The master receives a data byte.
5. The master asserts NO ACK on SDA.
6. The master asserts a STOP condition on SDA and the transaction ends.
The ADT7460 uses the following SMBus read protocols:
Receive Byte
The SMBus specification defines several protocols for different
types of read and write operations. The ones used in the
ADT7460 are discussed below. The following abbreviations are
used in the diagrams:
S – START
P – STOP
R – READ
W – WRITE
A – ACKNOWLEDGE
A – NO ACKNOWLEDGE
The ADT7460 uses the following SMBus write protocols:
Send Byte
In the ADT7460, the receive byte protocol is used to read a
single byte of data from a register whose address has previously
been set by a send byte or write byte operation.
In this operation, the master device sends a single command
byte to a slave device as follows:
1. The master device asserts a START condition on SDA.
2. The master sends the 7-bit slave address followed by the
write bit (low).
3. The addressed slave device asserts ACK on SDA.
4. The master sends a command code.
5. The slave asserts ACK on SDA.
6. The master asserts a STOP condition on SDA and the
transaction ends.
1
2
3
S SLAVE W A
ADDRESS
4
5 6
REGISTER
ADDRESS
A P
3
4
5 6
REGISTER
ADDRESS
A P
Figure 12. Single Byte Read from a Register
ALERT RESPONSE ADDRESS
Alert Response Address (ARA) is a feature of SMBus devices
that allows an interrupting device to identify itself to the host
when multiple devices exist on the same bus.
For the ADT7460, the send byte protocol is used to write a
register address to RAM for a subsequent single byte read from
the same address. This is illustrated in Figure 10.
1
2
S SLAVE W A
ADDRESS
The SMBALERT output can be used as an interrupt output or
can be used as an SMBALERT. One or more outputs can be
connected to a common SMBALERT line connected to the
master. If a device’s SMBALERT line goes low, the following
procedure occurs:
Figure 10. Setting a Register Address for Subsequent Read
1. SMBALERT is pulled low.
If it is required to read data from the register immediately after
setting up the address, the master can assert a repeat start condition immediately after the final ACK and carry out a single
byte read without asserting an intermediate stop condition.
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.
Write Byte
In this operation, the master device sends a command byte and
one data byte to the slave device as follows:
1. The master device asserts a START condition on SDA.
2. The master sends the 7-bit slave address followed by the
write bit (low).
3. The addressed slave device asserts ACK on SDA.
4. The master sends a command code.
5. The slave asserts ACK on SDA.
6. The master sends a data byte.
7. The slave asserts ACK on SDA.
8. The master asserts a STOP condition on SDA to end the
transaction.
This is illustrated in Figure 11.
1
2
3
S SLAVE W A
ADDRESS
4
REGISTER
ADDRESS
5
6
7 8
A DATA A P
Figure 11. Single Byte Write to a Register
REV. 0
3. The device whose SMBALERT 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 SMBALERT output is low, the
one with the lowest device address will have priority in
accordance with normal SMBus arbitration.
5. Once the ADT7460 has responded to the Alert Response
Address, the master must read the Status Registers and the
SMBALERT will only be cleared if the error condition has
gone away.
SMBUS TIMEOUT
The ADT7460 includes an SMBus Timeout feature. If there is
no SMBus activity for 35 ms, the ADT7460 assumes that the bus
is locked and releases the bus. This prevents the device from
locking or holding the SMBus expecting data. Some SMBus
controllers cannot handle the SMBus Timeout feature, so it
can be disabled.
CONFIGURATION REGISTER 1 – Register 0x40
<6> TODIS = 0; SMBus Timeout ENABLED (default)
<6> TODIS = 1; SMBus Timeout DISABLED
–11–
ADT7460
VOLTAGE MEASUREMENT INPUT
VOLTAGE MEASUREMENT REGISTERS
The ADT7460 has one external voltage measurement channel.
It can also measure its own supply voltage, VCC.
Reg. 0x20 2.5 V Reading = 0x00 default
Pin 14 may be configured to measure a 2.5 V supply. The VCC
supply voltage measurement is carried out through the VCC pin
(Pin 3). Setting Bit 7 of Configuration Register 1 (Reg. 0x40)
allows a 5 V supply to power the ADT7460 and be measured
without overranging the VCC measurement channel. The 2.5 V
input can be used to monitor a chipset supply voltage in
computer systems.
2.5 V LIMIT REGISTERS
Associated with the 2.5 V measurement channel is a high and
low limit register. Exceeding the programmed high or low limit
causes the appropriate Status bit to be set. Exceeding either
limit can also generate SMBALERT interrupts.
Reg. 0x44 2.5 V Low Limit = 0x00 default
Reg. 0x45 2.5 V High Limit = 0xFF default
ANALOG-TO-DIGITAL CONVERTER
45k⍀
All analog inputs are multiplexed into the on-chip, successive
approximation, analog-to-digital converter. This has a resolution of 10 bits. The basic input range is 0 V to 2.25 V but the
input has built-in attenuators to allow measurement of 2.5 V
without any external components. To allow for the tolerance of
the supply voltage, the ADC produces an output of 3/4 full scale
(decimal 768 or 300 hex) for the nominal input voltage and so
has adequate headroom to deal with overvoltages.
INPUT CIRCUITRY
The internal structure for the 2.5 V analog input is shown in
Figure 13. The input circuit consists of an input protection diode,
an attenuator, plus a capacitor to form a first-order low-pass
filter that gives the input immunity to high frequency noise.
2.5VIN
94k⍀
30pF
Figure 13. Structure of Analog Inputs
Table II shows the input ranges of the analog inputs and output
codes of the 10-bit ADC.
When the ADC is running, it samples and converts a voltage
input in 711 µs and averages 16 conversions to reduce noise; a
measurement takes nominally 11.38 ms.
–12–
REV. 0
ADT7460
Table II. 10-Bit A/D Output Code vs. VIN
Input Voltage
A/D Output
+5VIN
VCC (3.3VIN)*
+2.5VIN
Decimal
Binary (10 Bits)
<0.0065
0.0065–0.0130
0.0130–0.0195
0.0195–0.0260
0.0260–0.0325
0.0325–0.0390
0.0390–0.0455
0.0455–0.0521
0.0521–0.0586
<0.0042
0.0042–0.0085
0.0085–0.0128
0.0128–0.0171
0.0171–0.0214
0.0214–0.0257
0.0257–0.0300
0.0300–0.0343
0.0343–0.0386
0
1
2
3
4
5
6
7
8
00000000 00
00000000 01
00000000 10
00000000 11
00000001 00
00000001 01
00000001 10
00000001 11
00000010 00
1.6675–1.6740
•
•
1.1000–1.1042
<0.0032
0.0032–0.0065
0.0065–0.0097
0.0097–0.0130
0.0130–0.0162
0.0162–0.0195
0.0195–0.0227
0.0227–0.0260
0.0260–0.0292
•
256 (1/4 scale)
01000000 00
3.3300–3.3415
•
•
2.2000–2.2042
0.8325–0.8357
•
512 (1/2 scale)
10000000 00
5.0025–5.0090
•
•
3.3000–3.3042
1.6650–1.6682
•
768 (3/4 scale)
11000000 00
6.5983–6.6048
6.6048–6.6113
6.6113–6.6178
6.6178–6.6244
6.6244–6.6309
6.6309–6.6374
6.6374–6.4390
6.6439–6.6504
6.6504–6.6569
6.6569–6.6634
>6.6634
•
•
4.3527–4.3570
4.3570–4.3613
4.3613–4.3656
4.3656–4.3699
4.3699–4.3742
4.3742–4.3785
4.3785–4.3828
4.3828–4.3871
4.3871–4.3914
4.3914–4.3957
>4.3957
2.4975–2.5007
•
3.2942–3.2974
3.2974–3.3007
3.3007–3.3039
3.3039–3.3072
3.3072–3.3104
3.3104–3.3137
3.3137–3.3169
3.3169–3.3202
3.3202–3.3234
3.3234–3.3267
>3.3267
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
11111101 01
11111101 10
11111101 11
11111110 00
11111110 01
11111110 10
11111110 11
11111111 00
11111111 01
11111111 10
11111111 11
*The VCC output codes listed assume that V CC is 3.3 V. If V CC input is reconfigured for 5 V operation (by setting Bit 7 of Configuration Register 1), then the VCC
output codes are the same as for the 5 V IN column.
REV. 0
–13–
ADT7460
ADDITIONAL ADC FUNCTIONS FOR VOLTAGE
MEASUREMENTS
TEMPERATURE MEASUREMENT SYSTEM
Local Temperature Measurement
A number of other functions are available on the ADT7460 to
offer the systems designer increased flexibility:
For each voltage measurement read from a value register, 16
readings have actually been made internally and the results
averaged before being placed into the value register. There may
be an instance where you would like to speed up conversions.
Setting Bit 4 of Configuration Register 2 (Reg. 0x73) turns averaging off. This effectively gives a reading 16 times faster (711 µs),
but the reading may be noisier.
The ADT7460 contains an on-chip band gap temperature sensor
whose output is digitized by the on-chip 10-bit ADC. The 8-bit
MSB temperature data is stored in the Local Temp Register
(Address 26h). As both positive and negative temperatures can be
measured, the temperature data is stored in twos complement
format, as shown in Table III. Theoretically, the temperature sensor
and ADC can measure temperatures from –128C to +127C
with a resolution of 0.25C. However, this exceeds the operating
temperature range of the device, so local temperature measurements outside this range are not possible.
Bypass Voltage Input Attenuator
Remote Temperature Measurement
Turn Off Averaging
The ADT7460 can measure the temperature of two remote diode
sensors or diode-connected transistors connected to Pins 12 and
13, or 10 and 11.
Setting Bit 5 of Configuration Register 2 (Reg. 0x73) removes
the attenuation circuitry from the 2.5 V input. This allows the
user to directly connect external sensors or rescale the analog
voltage measurement inputs for other applications. The input
range of the ADC without the attenuators is 0 V to 2.25 V.
Single-Channel ADC Conversion
Setting Bit 6 of Configuration Register 2 (Reg. 0x73) places the
ADT7460 into Single-Channel ADC Conversion Mode. In this
mode, the ADT7460 can be made to read a single voltage channel only. If the internal ADT7460 clock is used, the selected
input will be read every 711 µs. The appropriate ADC channel
is selected by writing to Bits <7:5> of the TACH1 Minimum
High Byte Register (0x55).
Bits <7:5> Reg 0x55
000
010
Channel Selected
2.5 V
VCC
The forward voltage of a diode or diode-connected transistor
operated at a constant current exhibits a negative temperature
coefficient of about –2 mV/C. Unfortunately, the absolute
value of VBE varies from device to device and individual calibration is required to null this out, so the technique is unsuitable
for mass production. The technique used in the ADT7460 is to
measure the change in VBE when the device is operated at two
different currents.
This is given by:
∆VBE = KT q × ln(N )
where:
K is Boltzmann’s constant
q is charge on the carrier
Configuration Register 2 (Reg. 0x73)
T is absolute temperature in Kelvins
<4> = 1 Averaging Off
<5> = 1 Bypass Input Attenuators
<6> = 1 Single-Channel Convert Mode
N is ratio of the two currents.
Figure 14 shows the input signal conditioning used to measure
the output of a remote temperature sensor. This figure shows the
external sensor as a substrate transistor, provided for temperature
monitoring on some microprocessors. It could equally well be a
discrete transistor such as a 2N3904.
TACH1 Minimum High Byte (Reg. 0x55)
<7:5> Selects ADC Channel for Single-Channel Convert
Mode
VDD
I
NⴛI
IBIAS
CPU
REMOTE
SENSING
TRANSISTOR
THERMDA
D+
VOUT+
THERMDC
D–
VOUT–
TO ADC
BIAS
DIODE
LOW PASS
FILTER
fC = 65kHz
Figure 14. Signal Conditioning for Remote Diode Temperature Sensors
–14–
REV. 0
ADT7460
If a discrete transistor is used, the collector will not be grounded,
and should be linked to the base. If a PNP transistor is used, the
base is connected to the D– input and the emitter to the D+
input. If an NPN transistor is used, the emitter is connected to
the D– input and the base to the D+ input. Figure 15 shows
how to connect the ADT7460 to an NPN or PNP transistor for
temperature measurement. 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.
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, and to a chopperstabilized 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 10-bit, twos complement format. To
further reduce the effects of noise, digital filtering is performed
by averaging the results of 16 measurement cycles. A remote
temperature measurement takes nominally 25.5 ms. The results
of remote temperature measurements are stored in 10-bit, twos
complement format, as illustrated in Table III. The extra resolution for the temperature measurements is held in the Extended
Resolution Register 2 (Reg. 0x77). This gives temperature readings with a resolution of 0.25C.
Table III. Temperature Data Format
Temperature
Digital Output (10-Bit)*
–128C
–125C
–100C
–75C
–50C
–25C
–10C
0C
+10.25C
+25.5C
+50.75C
+75C
+100C
+125C
+127C
1000 0000 00
1000 0011 00
1001 1100 00
1011 0101 00
1100 1110 00
1110 0111 00
1111 0110 00
0000 0000 00
0000 1010 01
0001 1001 10
0011 0010 11
0100 1011 00
0110 0100 00
0111 1101 00
0111 1111 00
ADT7460
2N3904
NPN
D–
Figure 15a. Measuring Temperature Using an
NPN Transistor
ADT7460
D+
2N3906
PNP
D–
Figure 15b. Measuring Temperature Using a
PNP Transistor
Nulling Out Temperature Errors
As CPUs run faster, it is getting more difficult to avoid high frequency clocks when routing the D+, D– traces around a system
board. Even when recommended layout guidelines are followed,
there may still be temperature errors attributed to noise being
coupled onto the D+/D– lines. High frequency noise generally
has the effect of giving temperature measurements that are too
high by a constant amount. The ADT7460 has temperature
offset registers at addresses 0x70, 0x72 for the Remote 1 and
Remote 2 temperature channels. By doing a one-time calibration
of the system, one can determine the offset caused by system
board noise and null it out using the offset registers. The offset
registers automatically add a twos complement 8-bit reading to
every temperature measurement. The LSB adds 0.25°C offset
to the temperature reading so the 8-bit register effectively allows
temperature offsets of up to 32C with a resolution of 0.25C.
This ensures that the readings in the temperature measurement
registers are as accurate as possible.
Temperature Offset Registers
Reg. 0x70 Remote 1 Temp Offset = 0x00 (0°C default)
Reg. 0x71 Local Temp Offset = 0x00 (0°C default)
Reg. 0x72 Remote 2 Temp Offset = 0x00 (0°C default)
*Bold denotes 2 LSBs of measurement in Extended
Resolution Register 2 (Reg. 0x77) with 0.25C resolution.
REV. 0
D+
–15–
ADT7460
Temperature Measurement Registers
Single-Channel ADC Conversions
Reg. 0x25 Remote 1 Temperature = 0x80 default
Reg. 0x26 Local Temperature = 0x80 default
Reg. 0x27 Remote 2 Temperature = 0x80 default
Setting Bit 6 of Configuration Register 2 (Reg. 0x73) places the
ADT7460 into single-channel ADC Conversion Mode. In this
mode, the ADT7460 can be made to read a single temperature
channel only. The appropriate ADC channel is selected by writing
to Bits <7:5> of TACH1 Minimum High Byte Register (0x55).
Reg. 0x77 Extended Resolution 2 = 0x00 default
<7:6> TDM2 = Remote 2 Temperature LSBs
<5:4> LTMP = Local Temperature LSBs
<3:2> TDM1 = Remote 1 Temperature LSBs
Bits <7:5> Reg 0x55
101
110
111
Channel Selected
Remote 1 Temp
Local Temp
Remote 2 Temp
Temperature Measurement Limit Registers
Associated with each temperature measurement channel are
high and low limit registers. Exceeding the programmed high or
low limit causes the appropriate Status bit to be set. Exceeding
either limit can also generate SMBALERT interrupts.
Configuration Register 2 (Reg. 0x73)
<4> = 1 Averaging Off
<6> = 1 Single-Channel Convert Mode
TACH1 Minimum High Byte (Reg. 0x55)
Reg. 0x4E Remote 1 Temp Low Limit = 0x81 default
Reg. 0x4F Remote 1 Temp High Limit = 0x7F default
Reg. 0x50 Local Temp Low Limit = 0x81 default
Reg. 0x51 Local Temp High Limit = 0x7F default
Reg. 0x52 Remote 2 Temp Low Limit = 0x81 default
Reg. 0x53 Remote 2 Temp High Limit = 0x7F default
<7:5> Selects ADC Channel for Single-Channel Convert Mode
Overtemperature Events
Overtemperature events on any of the temperature channels can
be detected and dealt with automatically in Automatic Fan
Speed Control Mode. Registers 0x6A–0x6C are the THERM
limits. When a temperature exceeds its THERM limit, all fans
will run at 100% duty cycle. The fans will stay running at 100%
until the temperature drops below THERM – Hysteresis (this
can be disabled by setting the Boost bit in Configuration
Register 3, Bit 2, Register 0x78). The hysteresis value for that
THERM limit is the value programmed into Registers 0x6D,
0x6E (Hysteresis registers). The default hysteresis value is 4°C.
Reading Temperature from the ADT7460
It is important to note that temperature can be read from the
ADT7460 as an 8-bit value (with 1°C resolution), or as a 10-bit
value (with 0.25°C resolution). If only 1°C resolution is
required, the temperature readings can be read back at any time
and in no particular order.
If the 10-bit measurement is required, this involves a 2-register
read for each measurement. The Extended Resolution Register
(Reg. 0x77) should be read first. This causes all temperature
reading registers to be frozen until all temperature reading registers have been read from. This prevents an MSB reading from
being updated while its two LSBs are being read, and vice versa.
THERM LIMIT
HYSTERESIS = (ⴗC)
TEMP
FANS
ADDITIONAL ADC FUNCTIONS FOR TEMPERATURE
MEASUREMENT
A number of other functions are available on the ADT7460 to
offer the systems designer increased flexibility:
100%
Figure 16. THERM Limit Operation
Turn Off Averaging
For each temperature measurement read from a value register,
16 readings have actually been made internally and the results
averaged before being placed into the value register. Sometimes it may be necessary to take a very fast measurement,
e.g., of CPU temperature. Setting Bit 4 of Configuration Register 2 (Reg. 0x73) turns averaging off. This takes a reading
every 15.5 ms. Each remote temperature measurement takes 4 ms
and the local temperature measurement takes 1.4 ms.
–16–
REV. 0
ADT7460
LIMITS, STATUS REGISTERS, AND INTERRUPTS
Limit Values
Associated with each measurement channel on the ADT7460
are high and low limits. These can form the basis of system
status monitoring: a Status bit can be set for any out-of-limit
condition and detected by polling the device. Alternatively,
SMBALERT interrupts can be generated to flag a processor or
microcontroller of out-of-limit conditions.
Out-of-Limit Comparisons
Once all limits have been programmed, the ADT7460 can be
enabled for monitoring. The ADT7460 will measure all parameters in round-robin format and set the appropriate Status bit
for out-of-limit conditions. Comparisons are done differently
depending on whether the measured value is being compared to
a high or low limit.
8-Bit Limits
HIGH LIMIT: > COMPARISON PERFORMED
The following is a list of 8-bit limits on the ADT7460:
LOW LIMIT: < OR = COMPARISON PERFORMED
Voltage Limit Registers
Reg. 0x44 2.5 V Low Limit = 0x00 default
Reg. 0x45 2.5 V High Limit = 0xFF default
Reg. 0x48 VCC Low Limit = 0x00 default
Reg. 0x49 VCC High Limit = 0xFF default
NO INT
Temperature Limit Registers
Reg. 0x4E Remote 1 Temp Low Limit = 0x81 default
Reg. 0x4F Remote 1 Temp High Limit = 0x7F default
Reg. 0x6A Remote 1 THERM Limit = 0x64 default
Reg. 0x50 Local Temp Low Limit = 0x81 default
Reg. 0x51 Local Temp High Limit = 0x7F default
LOW LIMIT
Reg. 0x6B Local THERM Limit = 0x64 default
Reg. 0x52 Remote 2 Temp Low Limit = 0x81 default
Reg. 0x53 Remote 2 Temp High Limit = 0x7F default
TEMP >
LOW LIMIT
Reg. 0x6C Remote 2 THERM Limit = 0x64 default
Therm Limit Register
Reg. 0x7A THERM Timer Limit = 0x00 default
Figure 17. Temperature > Low Limit: No INT
16-Bit Limits
The Fan TACH measurements are 16-bit results. The Fan
TACH limits are also 16 bits, consisting of a High Byte and
Low Byte. Since fans running under speed or stalled are normally the only conditions of interest, only High Limits exist for
Fan TACHs. Since Fan TACH period is actually being measured, exceeding the limit indicates a slow or stalled fan.
Fan Limit Registers
Reg. 0x54 TACH1 Minimum Low Byte = 0xFF default
Reg. 0x55 TACH1 Minimum High Byte = 0xFF default
Reg. 0x56 TACH2 Minimum Low Byte = 0xFF default
Reg. 0x57 TACH2 Minimum High Byte = 0xFF default
Reg. 0x58 TACH3 Minimum Low Byte = 0xFF default
Reg. 0x59 TACH3 Minimum High Byte = 0xFF default
Reg. 0x5A TACH4 Minimum Low Byte = 0xFF default
Reg. 0x5B TACH4 Minimum High Byte = 0xFF default
REV. 0
–17–
ADT7460
Analog Monitoring Cycle Time
INT
LOW LIMIT
The analog monitoring cycle begins when a 1 is written to the
Start bit (Bit 0) of Configuration Register 1 (Reg 0x40). The ADC
measures each analog input in turn and as each measurement is
completed, the result is automatically stored in the appropriate value register. This round-robin monitoring cycle continues
unless disabled by writing a 0 to Bit 0 of Configuration Register 1.
As the ADC will normally be left to free-run in this manner, the
time taken to monitor all the analog inputs will normally not be
of interest, as the most recently measured value of any input can
be read out at any time.
For applications where the monitoring cycle time is important,
it can easily be calculated.
TEMP =
LOW LIMIT
The total number of channels measured is:
Two supply voltage inputs (2.5 V and VCC)
Figure 18. Temperature = Low Limit: INT Occurs
Local temperature
Two remote temperatures
NO INT
As mentioned previously, the ADC performs round-robin conversions and takes 11.38 ms for each voltage measurement,
12 ms for a local temperature reading, and 25.5 ms for each
remote temperature reading.
The total monitoring cycle time for averaged voltage and temperature monitoring is therefore nominally:
(2 11.38) + 12 + (2 25.5) = 85.76 ms
HIGH LIMIT
The round robin starts again 35 ms later. Therefore all channels
are measured approximately every 120 ms.
Fan TACH measurements are made in parallel and are not
synchronized with the analog measurements in any way.
TEMP =
HIGH LIMIT
Figure 19. Temperature = High Limit: No INT
INT
HIGH LIMIT
TEMP >
HIGH LIMIT
Figure 20. Temperature > High Limit: INT Occurs
Status Registers
The results of limit comparisons are stored in Status Registers 1
and 2. The Status Register bit for each channel reflects the status
of the last measurement and limit comparison on that channel. If
a measurement is within limits, the corresponding status register
bit will be cleared to 0. If the measurement is out-of-limits, the
corresponding status register bit will be set to 1.
The state of the various measurement channels may be polled by
reading the Status Registers over the serial bus. In Bit 7 (OOL)
of Status Register 1 (Reg. 0x41), 1 means that an out-of-limit
event has been flagged in Status Register 2. This means that you
need only read Status Register 2 when this bit is set. Alternatively, Pin 5 or Pin 14 can be configured as an SMBALERT
output. This will automatically notify the system supervisor of an
out-of-limit condition. Reading the Status registers clears the
appropriate status bit as long as the error condition that caused
the interrupt has cleared. Status Register bits are “sticky.” Whenever a Status bit gets set, indicating an out-of-limit condition, it
will remain set even if the event that caused it has gone away
(until read). The only way to clear the status bit is to read the
Status Register after the event has gone away. Interrupt Status
Mask Registers (Reg. 0x74, 0x75) allow individual interrupt
sources to be masked from causing an SMBALERT. However,
if one of these masked interrupt sources goes out-of-limit, its
associated status bit will get set in the Interrupt Status Registers.
–18–
REV. 0
ADT7460
HIGH LIMIT
TEMPERATURE
OOL = 1 DENOTES A PARAMETER
MONITORED THROUGH STATUS REG 2
IS OUT-OF-LIMIT
“STICKY”
STATUS
BIT
Figure 21. Status Register 1
Status Register 1 (Reg. 0x41)
CLEARED ON READ
(TEMP BELOW LIMIT)
TEMP BACK IN LIMIT
(STATUS BIT STAYS SET)
SMBALERT
Bit 7 (OOL) = 1, denotes a bit in Status Register 2 is set and
Status Register 2 should be read.
Figure 23. SMBALERT and Status Bit Behavior
Figure 23 shows how the SMBALERT output and “sticky”
status bits behave. Once a limit is exceeded, the corresponding
status bit gets set to 1. The status bit remains set until the error
condition subsides and the Status Register gets read. The status
bits are referred to as “sticky” since they remain set until read
by software. This ensures that an out-of-limit event cannot be
missed if software is polling the device periodically. Note that the
SMBALERT output remains low for the entire duration that a
reading is out-of-limit and until the Status Register has been read.
This has implications on how software handles the interrupt.
Bit 6 (R2T) = 1, Remote 2 Temp High or Low Limit has been
exceeded.
Bit 5 (LT) = 1, Local Temp High or Low Limit has been
exceeded.
Bit 4 (R1T) = 1, Remote 1 Temp High or Low Limit has been
exceeded.
Bit 3 = Unused
Bit 2 (VCC) = 1, VCC High or Low Limit has been exceeded.
Bit 1 = Unused
HANDLING SMBALERT INTERRUPTS
Bit 0 (2.5 V) = 1, 2.5 V High or Low Limit has been exceeded.
To prevent the system from being tied up servicing interrupts, it
is recommend to handle the SMBALERT interrupt as follows:
1. Detect the SMBALERT assertion.
2. Enter the interrupt handler.
3. Read the Status Registers to identify the interrupt source.
F4P = 1, FAN4 OR THERM
TIMER IS OUT-OF-LIMIT
4. Mask the interrupt source by setting the appropriate Mask
bit in the Interrupt Mask Registers (Reg. 0x74, 0x75).
Figure 22. Status Register 2
Status Register 2 (Reg. 0x42)
5. Take the appropriate action for a given interrupt source.
Bit 7 (D2) = 1, indicates an open or short on D2+/D2– inputs.
6. Exit the Interrupt Handler.
Bit 6 (D1) = 1, indicates an open or short on D2+/D2– inputs.
7. Periodically poll the Status Registers. If the interrupt status bit
has cleared, reset the corresponding Interrupt Mask Bit to 0.
This will cause the SMBALERT output and status bits to
behave as shown in Figure 24.
Bit 5 (F4P) = 1, indicates Fan 4 has dropped below minimum
speed. Alternatively, indicates that THERM Timer limit has
been exceeded if the THERM Timer function is used.
Bit 4 (FAN3) = 1, indicates Fan 3 has dropped below minimum
speed.
HIGH LIMIT
Bit 3 (FAN2) = 1, indicates Fan 2 has dropped below minimum
speed.
TEMPERATURE
Bit 2 (FAN1) = 1, indicates Fan 1 has dropped below minimum
speed.
“STICKY”
STATUS
BIT
Bit 1 (OVT) = 1, indicates that a THERM overtemperature
limit has been exceeded.
CLEARED ON READ
(TEMP BELOW LIMIT)
TEMP BACK IN LIMIT
(STATUS BIT STAYS SET)
Bit 0 = Unused
SMBALERT
SMBALERT Interrupt Behavior
The ADT7460 can be polled for status, or an SMBALERT interrupt can be generated for out-of-limit conditions. It is important
to note how the SMBALERT output and status bits behave
when writing Interrupt Handler software.
REV. 0
–19–
INTERRUPT
MASK BIT SET
INTERRUPT MASK BIT
CLEARED
(SMBALERT REARMED)
Figure 24. How Masking the Interrupt Source Affects
SMBALERT Output
ADT7460
the timer is read (it is cleared on read) or until it reaches full
scale. If the counter reaches full scale, it will stop at that reading
until cleared.
Masking Interrupt Sources
Interrupt Mask Registers 1 and 2 are located at Addresses
0x74 and 0x75. These allow individual interrupt sources to
be masked out to prevent SMBALERT interrupts. Note that
masking an interrupt source only prevents the SMBALERT
output from being asserted; the appropriate Status bit will get
set as normal.
The 8-bit THERM Timer register (Reg. 0x79) is designed such
that Bit 0 will get set to 1 on the first THERM assertion. Once
the cumulative THERM assertion time has exceeded 45.52 ms,
Bit 1 of the THERM timer gets set, and Bit 0 now becomes the
LSB of the timer with a resolution of 22.76 ms.
Interrupt Mask Register 1 (Reg. 0x74)
Bit 7 (OOL) = 1, masks SMBALERT for any alert condition
flagged in Status Register 2.
THERM
Bit 6 (R2T) = 1, masks SMBALERT for Remote 2 Temperature.
THERM
TIMER
(REG. 0x79)
Bit 5 (LT) = 1, masks SMBALERT for Local Temperature.
Bit 4 (R1T) = 1, masks SMBALERT for Remote 1 Temperature.
0 0 0 0 0 0 0 1
7 6 5 4 3 2 1 0
THERM ASSERTED
22.76ms
Bit 3 = Unused
THERM
Bit 2 (VCC) = 1, masks SMBALERT for VCC channel.
Bit 1 = Unused
ACCUMULATE THERM LOW
ASSERTION TIMES
Bit 0 (2.5 V) = 1, masks SMBALERT for 2.5 V channel.
THERM
TIMER
(REG. 0x79)
Interrupt Mask Register 2 (Reg. 0x75)
Bit 7 (D2) = 1, masks SMBALERT for Diode 2 errors.
0 0 0 0 0 0 1 0
7 6 5 4 3 2 1 0
THERM ASSERTED
45.52ms
Bit 6 (D1) = 1, masks SMBALERT for Diode 1 errors.
THERM
Bit 5 (FAN4) = 1, masks SMBALERT for Fan 4 failure. If the
TACH4 pin is being used as the THERM input, this bit masks
SMBALERT for a THERM event.
ACCUMULATE THERM LOW
ASSERTION TIMES
Bit 4 (FAN3) = 1, masks SMBALERT for Fan 3.
THERM TIMER 0 0 0 0 0 1 0 1
(REG. 0x79) 7 6 5 4 3 2 1 0
Bit 3 (FAN2) = 1, masks SMBALERT for Fan 2.
Bit 2 (FAN1) = 1, masks SMBALERT for Fan 1.
THERM ASSERTED 113.8ms
(91.04ms + 22.76ms)
Figure 25. Understanding the THERM Timer
Bit 1 (OVT) = 1, masks SMBALERT for overtemperature
(exceeding THERM limits).
Figure 25 illustrates how the THERM timer behaves as the
THERM input is asserted and negated. Bit 0 gets set on the
first THERM assertion detected. This bit remains set until
such time as the cumulative THERM assertions exceed
45.52 ms. At this time, Bit 1 of the THERM timer gets set,
and Bit 0 is cleared. Bit 0 now reflects timer readings with a
resolution of 22.76 ms.
Bit 0 = Unused
Enabling the SMBALERT Interrupt Output
The SMBALERT interrupt function is disabled by default. Pin 5
or Pin 14 can be reconfigured as an SMBALERT output to signal
out-of-limit conditions.
When using the THERM timer, be aware of the following:
CONFIGURING PIN 5 AS SMBALERT OUTPUT
REGISTER
Config Reg 3 (Reg. 0x78)
After a THERM timer read (Reg. 0x79):
BIT SETTING
a) The contents of the timer get cleared on read.
<0> ALERT = 1
b) The F4P bit (Bit 5) of Status Register 2 needs to be cleared
(assuming the THERM limit has been exceeded).
CONFIGURING PIN 14 AS SMBALERT OUTPUT
REGISTER
Config Reg 4 (Reg. 0x7D)
If the THERM timer is read during a THERM assertion, then
the following will happen:
BIT SETTING
<0> AL2.5V = 1
a) The contents of the timer are cleared.
Therm Input
b) Bit 0 of the THERM timer is set to 1 (since a THERM
assertion is occurring).
The ADT7460 has an internal timer to measure THERM
assertion time. For example, the THERM input may be connected
to the PROCHOT output of a Pentium 4 CPU and measure
system performance. The THERM input may also be connected
to the output of a trip point temperature sensor.
c) The THERM timer increments from zero.
The timer is started on the assertion of the ADT7460’s
THERM input, and stopped on the negation of the pin. The
timer counts THERM times cumulatively, i.e., the timer
resumes counting on the next THERM assertion. The THERM
timer will continue to accumulate THERM assertion times until
Generating SMBALERT Interrupts from THERM Events
The ADT7460 can generate SMBALERTs when a programmable THERM limit has been exceeded. This allows the
systems designer to ignore brief, infrequent THERM assertions,
while capturing longer THERM events. Register 0x7A is the
d) If the THERM limit (Reg. 0x7A) = 0x00, then the F4P bit
gets set.
–20–
REV. 0
ADT7460
Figure 26 is a Functional Block Diagram of the THERM timer,
limit, and associated circuitry. Writing a value of 0x00 to the
THERM Limit Register (Reg. 0x7A) causes SMBALERT to
be generated on the first THERM assertion. A THERM Limit
value of 0x01 generates an SMBALERT once cumulative THERM
assertions exceed 45.52 ms.
THERM Limit Register. This 8-bit register allows a limit from
0 seconds (first THERM assertion) to 5.825 seconds to be set
before an SMBALERT is generated. The THERM Timer value
is compared with the contents of the THERM Limit Register. If
the THERM Timer value exceeds the THERM Limit value,
then the F4P bit (Bit 5) of Status Register 2 gets set, and an
SMBALERT is generated. Note that the F4P bit (Bit 5) of
Mask Register 2 (Reg. 0x75) will mask out SMBALERTs if this
bit is set to 1, although the F4P bit of Interrupt Status Register 2
will still get set if the THERM Limit is exceeded.
THERM LIMIT
(REG. 0x7A)
2.914s
1.457s
728.32ms
364.16ms
182.08ms
91.04ms
45.52ms
22.76ms
2.914s
1.457s
728.32ms
364.16ms
182.08ms
91.04ms
45.52ms
22.76ms
THERM
TIMER
(REG. 0x79)
THERM
7 6 5 4 3 2 1 0
0 1 2 3 4 5 6 7
THERM TIMER CLEARED ON READ
COMPARATOR
IN
OUT
F4P BIT (BIT 5)
STATUS REGISTER 2
SMBALERT
LATCH
RESET
CLEARED
ON READ
1 = MASK
F4P BIT (BIT 5)
MASK REGISTER 2
(REG. 0x75)
Figure 26. Functional Diagram of ADT7460’s THERM Monitoring Circuitry
Configuring the Desired THERM Behavior
1. Configure the THERM input.
Setting Bit 1 (PHOT) of Configuration Register 3 (Reg. 0x78)
enables the THERM monitoring function.
2. Select the desired fan behavior for THERM events.
Setting Bit 2 (BOOST bit) of Configuration Register 3
(Reg. 0x78) causes all fans to run at 100% duty cycle whenever
THERM gets asserted. This allows fail-safe system cooling.
If this bit = 0, the fans will run at their current settings and
will not be affected by THERM events.
3. Select whether THERM events should generate
SMBALERT interrupts.
Bit 5 (F4P) of Mask Register 2 (Reg. 0x75), when set,
masks out SMBALERTs when the THERM limit value gets
exceeded. This bit should be cleared if SMBALERTs based
on THERM events are required.
REV. 0
4. Select a suitable THERM limit value.
This value determines whether an SMBALERT is generated
on the first THERM assertion, or only if a cumulative THERM
assertion time limit is exceeded. A value of 0x00 causes an
SMBALERT to be generated on the first THERM assertion.
5. Select a THERM monitoring time.
This is how often OS or BIOS level software checks the
THERM timer. For example, BIOS could read the THERM
timer once an hour to determine the cumulative THERM
assertion time. If, for example, the total THERM assertion
time is <22.76 ms in Hour 1, >182.08 ms in Hour 2, and
>5.825 s in Hour 3, this can indicate that system performance is degrading significantly since THERM is asserting
more frequently on an hourly basis.
–21–
Alternatively, OS or BIOS level software can time-stamp when
the system is powered on. If an SMBALERT is generated due
to the THERM limit being exceeded, another time-stamp can
be taken. The difference in time can be calculated for a fixed
ADT7460
THERM limit time. For example, if it takes one week for a
THERM limit of 2.914 s to be exceeded and the next time it only
takes 1 hour, then this is an indication of a serious degradation
in system performance.
Figure 28 shows how a 3-wire fan may be driven using PWM
control.
12V
Configuring the ADT7460 THERM Pin as an Output
12V
10k⍀
In addition to the ADT7460 being able to monitor THERM as
an input, the ADT7460 can optionally drive THERM low as an
output. The user can preprogram system critical thermal limits.
If the temperature exceeds a thermal limit by 0.25°C, THERM
will assert low. If the temperature is still above the thermal limit
on the next monitoring cycle, THERM will stay low. THERM
will remain asserted low until the temperature is equal to or
below the thermal limit. Since the temperature for that channel
is only measured every monitoring cycle, once THERM asserts
it is guaranteed to remain low for at least one monitoring cycle.
10k⍀
12V
FAN
TACH/AIN
TACH
1N4148
4.7k⍀
ADT7460
3.3V
10k⍀
Q1
NDT3055L
PWM
Figure 28. Driving a 3-Wire Fan Using an
N-Channel MOSFET
The THERM pin can be configured to assert low if the Remote 1,
Local, or Remote 2 Temperature THERM Limits get exceeded
by 0.25°C. The THERM Limit Registers are at locations 0x6A,
0x6B, and 0x6C respectively. Setting Bit 3 of Registers 0x5F,
0x60, and 0x61 enables the THERM output feature for the
Remote 1, Local, and Remote 2 Temperature channels, respectively. Figure 27 shows how the THERM pin asserts low as an
output in the event of a critical overtemperature.
Figure 28 uses a 10 kΩ pull-up resistor for the TACH signal. This
assumes that the TACH signal is open-collector from the fan. In
all cases, the TACH signal from the fan must be kept below 5 V
maximum to prevent damaging the ADT7460. If in doubt as to
whether the fan used has an open-collector or totem pole
TACH output, use one of the input signal conditioning circuits
shown in the Fan Speed Measurement section of the data sheet.
Figure 29 shows a fan drive circuit using an NPN transistor
such as a general-purpose MMBT2222. While these devices are
inexpensive, they tend to have much lower current handling
capabilities and higher on-resistance than MOSFETs. When
choosing a transistor, care should be taken to ensure that it
meets the fan’s current requirements.
THERM LIMIT
+0.25ⴗC
THERM LIMIT
TEMP
Ensure that the base resistor is chosen such that the transistor is
saturated when the fan is powered on.
THERM
12V
ADT7460
MONITORING
CYCLE
12V
10k⍀
10k⍀
TACH/AIN
Figure 27. Asserting THERM as an Output, Based on
Tripping THERM Limits
TACH
12V
FAN
1N4148
4.7k⍀
ADT7460
FAN DRIVE USING PWM CONTROL
3.3V
470⍀
The ADT7460 uses Pulsewidth Modulation (PWM) to control
fan speed. This relies on varying the duty cycle (or on/off ratio)
of a square wave applied to the fan to vary the fan speed. The
external circuitry required to drive a fan using PWM control is
extremely simple. A single NMOSFET is the only drive device
required. The specifications of the MOSFET depend on the
maximum current required by the fan being driven. Typical
notebook fans draw a nominal 170 mA, and so SOT devices can
be used where board space is a concern. In desktops, fans can
typically draw 250 mA–300 mA each. If you drive several fans
in parallel from a single PWM output or drive larger server fans,
the MOSFET will need to handle the higher current requirements.
The only other stipulation is that the MOSFET should have a
gate voltage drive, VGS < 3.3 V for direct interfacing to the
PWM_OUT pin. VGS can be greater than 3.3 V as long as the
pull-up on the gate is tied to 5 V. The MOSFET should also
have a low on resistance to ensure that there is not significant
voltage drop across the FET. This would reduce the voltage
applied across the fan and therefore the maximum operating
speed of the fan.
PWM
Q1
MMBT2222
Figure 29. Driving a 3-Wire Fan Using an NPN Transistor
Driving Two Fans from PWM3
Note that the ADT7460 has four TACH inputs available for fan
speed measurement, but only three PWM drive outputs. If a
fourth fan is being used in the system, it should be driven from
the PWM3 output in parallel with the third fan. Figure 30 shows
how to drive two fans in parallel using low cost NPN transistors.
Figure 31 is the equivalent circuit using the NDT3055L
MOSFET. Note that since the MOSFET can handle up to 3.5 A,
it is simply a matter of connecting another fan directly in parallel
with the first.
–22–
REV. 0
ADT7460
Care should be taken in designing drive circuits with transistors
and FETs to ensure that the PWM Pins are not required to
source current, and that they sink less than the 8 mA maximum
current specified on the data sheet.
drive two fans. Alternatively, PWM2 can be programmed to
synchronize TACH2, TACH3, and TACH4 to the PWM2
output. This allows PWM2 to drive two or three fans. In this
case, the drive circuitry looks the same as shown in Figures 30
and 31. The SYNC bit in Register 0x62 enables this function.
Driving up to Three Fans From PWM2
TACH measurements for fans are synchronized to particular
PWM channels, e.g., TACH1 is synchronized to PWM1. TACH3
and TACH4 are both synchronized to PWM3, so PWM3 can
<4> (SYNC) ENHANCE ACOUSTICS REG 1 (0x62)
SYNC = 1 Synchronizes TACH2, TACH3, and TACH4
to PWM2.
12V
3.3V
1N4148
3.3V
ADT7460
TACH3
1k⍀
TACH4
Q1
MMBT3904
PWM3
2.2k⍀
Q2
MMBT2222
10⍀
Q3
MMBT2222
10⍀
Figure 30. Interfacing Two Fans in Parallel to the PWM3 Output Using Low Cost NPN Transistors
3.3V
10k⍀
TYPICAL
TACH4
+V
3.3V
ADT7460
10k⍀
TYPICAL
TACH3
+V
5V OR
12V FAN
1N4148
TACH
TACH
5V OR 12V
FAN
3.3V
10k⍀
TYPICAL
PWM3
Q1
NDT3055L
Figure 31. Interfacing Two Fans in Parallel to the PWM3 Output Using a Single N-Channel MOSFET
REV. 0
–23–
ADT7460
Driving 2-Wire Fans
LAYING OUT 2-WIRE AND 3-WIRE FANS
Figure 32 shows how a 2-wire fan may be connected to the
ADT7460. This circuit allows the speed of a 2-wire fan to be
measured, even though the fan has no dedicated TACH signal.
A series resistor, RSENSE, in the fan circuit converts the fan commutation pulses into a voltage. This is ac-coupled into the ADT7460
through the 0.01 µF capacitor. On-chip signal conditioning
allows accurate monitoring of fan speed. The value of RSENSE
chosen depends upon the programmed input threshold and the
current drawn by the fan. For fans drawing approximately 200 mA,
a 2 Ω RSENSE value is suitable when the threshold is programmed as
40 mV. For fans that draw more current, such as larger desktop
or server fans, RSENSE may be reduced for the same programmed
threshold. The smaller the threshold programmed the better,
since more voltage will be developed across the fan and the fan
will spin faster. Figure 33 shows a typical plot of the sensing
waveform at a TACH/AIN pin. The most important thing is that
the voltage spikes (either negative going or positive going) are
more than 40 mV in amplitude. This allows fan speed to be
reliably determined.
Figure 34 shows how to lay out a common circuit arrangement
for 2-wire and 3-wire fans. Some components will not be populated, depending on whether a 2-wire or 3-wire fan is being used.
12V OR 5V
R1
1N4148
3.3V OR 5V
R2
R5
PWM
Q1
MMBT2222
C1
TACH/AIN
R3
R4
FOR 3-WIRE FANS:
POPULATE R1, R2, R3
R4 = 0⍀
C1 = UNPOPULATED
FOR 2-WIRE FANS:
POPULATE R4, C1
R1, R2, R3 UNPOPULATED
Figure 34. Planning for 2-Wire or 3-Wire Fans on a PCB
+V
TACH Inputs
5V OR
12V FAN
1N4148
ADT7460
3.3V
10k⍀
TYPICAL
Q1
NDT3055L
PWM
0.01␮F
TACH/AIN
RSENSE
2⍀
TYPICAL
Figure 32. Driving a 2-Wire Fan
Pins 4, 6, 7, and 9 are open-drain TACH inputs intended for
fan speed measurement.
Signal conditioning in the ADT7460 accommodates the slow rise
and fall times typical of fan tachometer outputs. The maximum
input signal range is 0 V to 5 V, even where VCC is less than 5 V.
In the event that these inputs are supplied from fan outputs that
exceed 0 V to 5 V, either resistive attenuation of the fan signal
or diode clamping must be included to keep inputs within an
acceptable range.
Figures 35a to 35d show circuits for most common fan
TACH outputs.
If the fan TACH output has a resistive pull-up to VCC, it can
be connected directly to the fan input, as shown in Figure 35a.
VCC
12V
PULL-UP
4.7k⍀
TYP
ADT7460
TACH
OUTPUT
TACH
FAN SPEED
COUNTER
Figure 35a. Fan with TACH Pull-Up to +VCC
If the fan output has a resistive pull-up to 12 V (or other voltage
greater than 5 V), the fan output can be clamped with a Zener
diode, as shown in Figure 35b. The Zener diode voltage should
be chosen so that it is greater than VIH of the TACH input but
less than 5 V, allowing for the voltage tolerance of the Zener. A
value of between 3 V and 5 V is suitable.
Figure 33. Fan Speed Sensing Waveform at
TACH/AIN Pin
–24–
REV. 0
ADT7460
12V
it would take several seconds to accumulate a reasonably large
and accurate count. Instead, the period of the fan revolution is
measured by gating an on-chip 90 kHz oscillator into the input of
a 16-bit counter for N periods of the fan TACH output (Figure 36),
so the accumulated count is actually proportional to the fan
tachometer period and inversely proportional to the fan speed.
VCC
PULL-UP
4.7k⍀
TYP
ADT7460
TACH
OUTPUT
TACH
FAN SPEED
COUNTER
ZD1*
CLOCK
*CHOOSE ZD1 VOLTAGE APPROX 0.8 ⴛ VCC
PWM
Figure 35b. Fan with TACH Pull-Up to Voltage
> 5 V, e.g., 12 V, Clamped with Zener Diode
TACH
If the fan has a strong pull-up (less than 1 kΩ) to 12 V or a
totem-pole output, then a series resistor can be added to limit the
Zener current, as shown in Figure 35c. Alternatively, a resistive
attenuator may be used, as shown in Figure 35d.
1
2
3
R1 and R2 should be chosen such that:
4
2 V < VPULLUP × R2 / (RPULLUP + R1 + R2) < 5 V
The fan inputs have an input resistance of nominally 160 kΩ to
ground, so this should be taken into account when calculating
resistor values.
With a pull-up voltage of 12 V and pull-up resistor less than 1 kΩ,
suitable values for R1 and R2 would be 100 kΩ and 47 kΩ. This
will give a high input voltage of 3.83 V.
5V OR 12V
VCC
FAN
Figure 36. Fan Speed Measurement
N, the number of pulses counted, is determined by the settings
of Register 0x7B (Fan Pulses Per Revolution Register). This
register contains two bits for each fan, allowing one, two
(default), three, or four TACH pulses to be counted.
Fan Speed Measurement Registers
The Fan Tachometer Readings are 16-bit values consisting of a
2-byte read from the ADT7460.
Reg. 0x28 TACH1 Low Byte = 0x00 default
Reg. 0x29 TACH1 High Byte = 0x00 default
PULL-UP TYP
<1k⍀
OR
TOTEM POLE
R1
10k⍀
TACH
OUTPUT
TACH
ADT7460
Reg. 0x2A TACH2 Low Byte = 0x00 default
FAN SPEED
COUNTER
Reg. 0x2B TACH2 High Byte = 0x00 default
Reg. 0x2C TACH3 Low Byte = 0x00 default
ZD1
ZENER*
Reg. 0x2D TACH3 High Byte = 0x00 default
*CHOOSE ZD1 VOLTAGE APPROX 0.8 ⴛ VCC
Reg. 0x2E TACH4 Low Byte = 0x00 default
Figure 35c. Fan with Strong TACH Pull-Up to
> VCC or Totem-Pole Output, Clamped with Zener
and Resistor
12V
VCC
ADT7460
<1k⍀
R1*
TACH
OUTPUT
TACH
FAN SPEED
COUNTER
R2*
*SEE TEXT
Figure 35d. Fan with Strong TACH Pull-Up to
> VCC or Totem-Pole Output, Attenuated with R1/R2
Reg. 0x2F TACH4 High Byte = 0x00 default
Reading Fan Speed from the ADT7460
If fan speeds are being measured, this involves a 2-register read
for each measurement. The low byte should be read first. This
causes the high byte to be frozen until both High and Low Byte
registers have been read from. This prevents erroneous TACH
readings.
The Fan Tachometer Reading registers report back the number
of 11.11 µs period clocks (90 kHz oscillator) gated to the fan
speed counter, from the rising edge of the first fan TACH pulse
to the rising edge of the third fan TACH pulse (assuming two
pulses per revolution are being counted). Since the device is
essentially measuring the fan TACH period, the higher the
count value the slower the fan is actually running. A 16-bit Fan
Tachometer reading of 0xFFFF indicates either that the fan has
stalled or is running very slowly (< 100 RPM).
Fan Speed Measurement
HIGH LIMIT: > COMPARISON PERFORMED
The fan counter does not count the fan TACH output pulses
directly because the fan speed may be less than 1000 RPM and
Since the actual fan TACH period is being measured, exceeding
a Fan TACH Limit by 1 will set the appropriate Status bit and
can be used to generate an SMBALERT.
REV. 0
–25–
ADT7460
<7:6> FAN4 default = 2 pulses per rev.
Fan TACH Limit Registers
The Fan TACH Limit Registers are 16-bit values consisting of
two bytes.
00 = 1 pulse per rev.
01 = 2 pulses per rev.
Reg. 0x54 TACH1 Minimum Low Byte = 0xFF default
10 = 3 pulses per rev.
Reg. 0x55 TACH1 Minimum High Byte = 0xFF default
11 = 4 pulses per rev.
Reg. 0x56 TACH2 Minimum Low Byte = 0xFF default
Reg. 0x57 TACH2 Minimum High Byte = 0xFF default
2-Wire Fan Speed Measurements
Reg. 0x58 TACH3 Minimum Low Byte = 0xFF default
The ADT7460 is capable of measuring the speed of 2-wire fans,
i.e., fans without TACH outputs. To do this, the fan must be
interfaced as shown in the Fan Drive Circuitry section of the
data sheet. In this case, the TACH inputs need to be reprogrammed as analog inputs, AIN.
Reg. 0x59 TACH3 Minimum High Byte = 0xFF default
Reg. 0x5A TACH4 Minimum Low Byte = 0xFF default
Reg. 0x5B TACH4 Minimum High Byte = 0xFF default
Fan Speed Measurement Rate
CONFIGURATION REGISTER 2 (REG. 0x73)
The Fan TACH readings are normally updated once every
second.
Bit 3 (AIN4) = 1, Pin 9 is reconfigured to measure the speed
of a 2-wire fan using an external sensing resistor and coupling
capacitor.
The FAST bit (Bit 3) of Configuration Register 3 (Reg. 0x78),
when set, updates the Fan TACH readings every 250 ms.
Bit 2 (AIN3) = 1, Pin 4 is reconfigured to measure the speed
of a 2-wire fan using an external sensing resistor and coupling
capacitor.
If any of the fans are not being driven by a PWM channel but
are powered directly from 5 V or 12 V, its associated dc bit in
Configuration Register 3 should be set. This allows TACH
readings to be taken on a continuous basis for fans connected
directly to a dc source.
Bit 1 (AIN2) = 1, Pin 7 is reconfigured to measure the speed
of a 2-wire fan using an external sensing resistor and coupling
capacitor.
Calculating Fan Speed
Assuming a fan with a two pulses/revolution (and two pulses/rev
being measured) fan speed is calculated by:
Fan Speed (RPM) = (90,000 ⴛ 60)/Fan Tach Reading
AIN Switching Threshold
Having configured the TACH inputs as AIN inputs for 2-wire
measurements, you can select the sensing threshold for the
AIN signal.
where:
Fan Tach Reading = 16-bit Fan Tachometer Reading
Example:
CONFIGURATION REGISTER 4 (REG. 0x7D)
<3:2> AINL
These two bits define the input threshold for
2-wire fan speed measurements.
00 = ⴞ20 mV
01 = ⴞ40 mV
10 = ⴞ80 mV
11 = ⴞ130 mV
TACH1 High Byte (Reg 0x29) = 0x17
TACH1 Low Byte (Reg 0x28) = 0xFF
What is Fan 1 speed in RPM?
Fan 1 TACH reading = 0x17FF = 6143 decimal
RPM = (f 60)/Fan 1 TACH reading
RPM = (90000 60)/6143
Fan Speed = 879 RPM
Fan Spin-Up
Fan Pulses Per Revolution
Different fan models can output either 1, 2, 3, or 4 TACH pulses
per revolution. Once the number of fan TACH pulses has been
determined, it can be programmed into the Fan Pulses Per
Revolution Register (Reg. 0x7B) for each fan. Alternatively, this
register can be used to determine the number or pulses/revolution
output by a given fan. By plotting fan speed measurements at
100% speed with different pulses/rev setting, the smoothest graph
with the lowest ripple determines the correct pulses/rev value.
Fan Pulses Per Revolution Register
<1:0> FAN1 default = 2 pulses per rev.
<3:2> FAN2 default = 2 pulses per rev.
<5:4> FAN3 default = 2 pulses per rev.
Bit 0 (AIN1) = 1, Pin 6 is reconfigured to measure the speed
of a 2-wire fan using an external sensing resistor and coupling
capacitor.
The ADT7460 has a unique fan spin-up function. It will spin
the fan at 100% PWM duty cycle until two TACH pulses are
detected on the TACH input. Once two pulses have been
detected, the PWM duty cycle will go to the expected running
value, e.g., 33%. The advantage of this is that fans have different spin-up characteristics and will take different times to
overcome inertia. The ADT7460 just runs the fans fast enough
to overcome inertia and will be quieter on spin-up than fans
programmed to spin-up for a given spin-up time.
Fan Start-Up Timeout
To prevent false interrupts being generated as a fan spins up
(since it is below running speed), the ADT7460 includes a Fan
Start-Up Timeout function. This is the time limit allowed for two
TACH pulses to be detected on spin-up. For example, if 2 seconds
Fan Start-Up Timeout is chosen and no TACH pulses occur
within 2 seconds of the start of spin-up, a fan fault is detected
and flagged in the Interrupt Status Registers.
–26–
REV. 0
ADT7460
PWM1 CONFIGURATION (REG. 0x5C)
PWM1 FREQUENCY REGISTERS (REG. 0x5F–0x61)
<2:0> SPIN
<2:0> FREQ
These bits control the Start-Up timeout for
PWM1.
000 = No startup timeout
001 = 100 ms
010 = 250 ms (default)
011 = 400 ms
100 = 667 ms
101 = 1 s
110 = 2 s
111 = 4 s
Fan Speed Control
The ADT7460 can control fan speed using two different modes.
The first is Automatic Fan Speed Control Mode. In this mode
fan speed is automatically varied with temperature and without
CPU intervention, once initial parameters are set up. The
advantage of this is in the case of the system hanging, the user is
guaranteed that the system is protected from overheating. The
Automatic Fan Speed Control incorporates a feature called
Dynamic T_min calibration. This feature reduces the design
effort required to program the Automatic Fan Speed Control
Loop. For more information and how to program the Automatic
Fan Speed Control Loop and Dynamic T_min calibration; see
the Automatic Fan Speed Control Loop application note.
PWM2 CONFIGURATION (REG. 0x5D)
<2:0> SPIN
000 = 11.0 Hz
001 = 14.7 Hz
010 = 22.1 Hz
011 = 29.4 Hz
100 = 35.3 Hz (default)
101 = 44.1 Hz
110 = 58.8 Hz
111 = 88.2 Hz
These bits control the Start-Up timeout for
PWM2.
000 = No startup timeout
001 = 100 ms
010 = 250 ms (default)
011 = 400 ms
100 = 667 ms
101 = 1 s
110 = 2 s
111 = 4 s
PWM3 CONFIGURATION (REG. 0x5E)
The second fan speed control method is Manual Fan Speed
Control which is described in the next paragraph.
<2:0> SPIN
Manual Fan Speed Control
These bits control the Start-Up timeout for
PWM3.
000 = No startup timeout
001 = 100 ms
010 = 250 ms (default)
011 = 400 ms
100 = 667 ms
101 = 1 s
110 = 2 s
111 = 4 s
The ADT7460 allows the Duty Cycle of any PWM output to be
manually adjusted. This can be useful if you wish to change fan
speed in software or want to adjust PWM duty cycle output for
test purposes. Bits <7:5> of Registers 0x5C–0x5E (PWM Configuration) control the behavior of each PWM output.
PWM CONFIGURATION (REG. 0x5C–0x5E)
<7:5> BHVR
Disabling Fan Start-Up Timeout
Although Fan Start-Up makes fan spin-ups much quieter than
fixed-time spin-ups, the option exists to use fixed spin-up times.
Bit 5 (FSPDIS) = 1 in Configuration Register 1 (Reg. 0x40)
disables the spin-up for two TACH pulses. Instead, the fan will
spin up for the fixed time as selected in Registers 0x5C–0x5E.
PWM Logic State
The PWM outputs can be programmed high for 100% duty cycle
(noninverted) or low for 100% duty cycle (inverted).
PWM1 Configuration (Reg. 0x5C)
<4> INV
0 = logic high for 100% PWM duty cycle
1 = logic low for 100% PWM duty cycle
PWM2 Configuration (Reg. 0x5D)
<4> INV
0 = logic high for 100% PWM duty cycle
1 = logic low for 100% PWM duty cycle
PWM3 Configuration (Reg. 0x5E)
<4> INV
Once under Manual Control, each PWM output may be manually
updated by writing to registers 0x30–0x32 (PWMx Current
Duty Cycle Registers).
Programming the PWM Current Duty Cycle Registers
The PWM Current Duty Cycle Registers are 8-bit registers that
allow the PWM duty cycle for each output to be set anywhere
from 0% (0x00) to 100% (0xFF) in steps of 0.39% (256 steps).
The value to be programmed into the PWMMIN register is
given by:
Value(decimal ) = PWM MIN / 0.39
Example 1: For a PWM duty cycle of 50%,
Value (decimal) = 50/0.39 = 128 decimal
Value = 128 decimal or 0x80.
Example 2: For a PWM duty cycle of 33%,
Value (decimal) = 33/0.39 = 85 decimal
Value = 85 decimal or 0x54.
0 = logic high for 100% PWM duty cycle
1 = logic low for 100% PWM duty cycle
PWM Drive Frequency
The PWM drive frequency can be adjusted for the application. Registers 0x5F–0x61 configure the PWM frequency for
PWM1–PWM3, respectively.
REV. 0
111 = Manual Mode
–27–
ADT7460
PWM DUTY CYCLE REGISTERS
XOR TREE TEST MODE
Reg. 0x30 PWM1 Duty Cycle = 0xFF (100% default)
Reg. 0x31 PWM2 Duty Cycle = 0xFF (100% default)
Reg. 0x32 PWM3 Duty Cycle = 0xFF (100% default)
The ADT7460 includes an XOR Tree Test Mode. This mode is
useful for in-circuit test equipment at board-level testing. By
applying stimulus to the pins included in the XOR Tree, it is
possible to detect opens or shorts on the system board. Figure 38
shows the signals that are exercised in the XOR Tree Test Mode.
By reading the PWMx Current Duty Cycle Registers, you can
keep track of the current duty cycle on each PWM output, even
when the fans are running in Automatic Fan Speed Control
Mode or Acoustic Enhancement Mode.
TACH1
TACH2
TACH3
TACH4
PWM2
PWM3
VARY PWM DUTY
CYCLE WITH 8-BIT
RESOLUTION
PWM1/XTO
Figure 38. XOR Tree Test
The XOR Tree Test is invoked by setting Bit 0 (XEN) of the
XOR Tree Test Enable Register (Reg. 0x6F).
Figure 37. Control PWM Duty Cycle Manually
with a Resolution of 0.39%
OPERATING FROM 3.3 V STANDBY
The ADT7460 has been specifically designed to operate from a
3.3 V STBY supply. In computers that support S3 and S5
states, the core voltage of the processor will be lowered in these
states. If using the Dynamic TMIN Mode, lowering the core
voltage of the processor would change the CPU temperature
and change the dynamics of the system under dynamic TMIN
control. Likewise, when monitoring THERM, the THERM
timer should be disabled during these states.
–28–
REV. 0
ADT7460
Table IV. ADT7460 Registers
Address
R/W
Description
Bit 7
Bit 6
0x20
0x22
0x25
0x26
0x27
0x28
0x29
0x2A
0x2B
0x2C
0x2D
0x2E
0x2F
0x30
0x31
0x32
0x33
0x34
0x35
0x36
0x37
0x3D
0x3E
0x3F
0x40
0x41
0x42
0x43
0x44
0x45
0x48
0x49
0x4E
0x4F
0x50
0x51
0x52
0x53
0x54
0x55
0x56
0x57
0x58
0x59
0x5A
0x5B
R
R
R
R
R
R
R
R
R
R
R
R
R
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R
R
R
R/W
R
R
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
2.5 V Reading
VCC Reading
Remote 1 Temperature
Local Temperature
Remote 2 Temperature
TACH1 Low Byte
TACH1 High Byte
TACH2 Low Byte
TACH2 High Byte
TACH3 Low Byte
TACH3 High Byte
TACH4 Low Byte
TACH4 High Byte
PWM1 Current Duty Cycle
PWM2 Current Duty Cycle
PWM3 Current Duty Cycle
Remote 1 Operating Point
Local Temp Operating Point
Remote 2 Operating Point
Dynamic TMIN Control Reg 1
Dynamic TMIN Control Reg 2
Device ID Register
Company ID Number
Revision Number
Configuration Register 1
Interrupt Status Register 1
Interrupt Status Register 2
VID Register
2.5 V Low Limit
2.5 V High Limit
VCC Low Limit
VCC High Limit
Remote 1 Temp Low Limit
Remote 1 Temp High Limit
Local Temp Low Limit
Local Temp High Limit
Remote 2 Temp Low Limit
Remote 2 Temp High Limit
TACH1 Minimum Low Byte
TACH1 Minimum High Byte
TACH2 Minimum Low Byte
TACH2 Minimum High Byte
TACH3 Minimum Low Byte
TACH3 Minimum High Byte
TACH4 Minimum Low Byte
TACH4 Minimum High Byte
9
9
9
9
9
7
15
7
15
7
15
7
15
7
7
7
7
7
7
R2T
CYR2
7
7
VER
VCC
OOL
D2
VIDSEL
7
7
7
7
7
7
7
7
7
7
7
15
7
15
7
15
7
15
8
7
6
5
4
3
8
7
6
5
4
3
8
7
6
5
4
3
8
7
6
5
4
3
8
7
6
5
4
3
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
LT
R1T
PHTR2 PHTL PHTR1 VCCPLO
CYR2
CYL
CYL CYL
CYR1 CYR1
6
5
4
3
2
1
6
5
4
3
2
1
VER
VER
VER
STP
STP
STP
TODIS FSPDIS V I FSPD RDY
LOCK
1
R2T
LT
R1T
3
VCC
D1
5
FAN3 FAN2 FAN1 OVT
THLD 5
VID4 VID3
VID2
VID1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
6
5
4
3
2
1
14
13
12
11
10
9
REV. 0
Bit 5
–29–
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
2
2
2
2
2
0
8
0
8
0
8
0
8
0
0
0
0
0
0
CYR2
CYR1
0
0
STP
STRT
2.5V
0
VID0
0
0
0
0
0
0
0
0
0
0
0
8
0
8
0
8
0
8
Default
0x00
0x00
0x80
0x80
0x80
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0xFF
0xFF
0xFF
0x64
0x64
0x64
0x00
0x00
0x27
0x41
0x62
0x00
0x00
0x00
0xFF
0x00
0xFF
0x00
0xFF
0x81
0x7F
0x81
0x7F
0x81
0x7F
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
Lockable?
YES
YES
YES
YES
YES
YES
ADT7460
Table IV. ADT7460 Registers (continued)
Address
R/W Description
Bit 7
Bit 6
Bit 5
0x5C
0x5D
0x5E
0x5F
0x60
0x61
0x62
0x63
0x64
0x65
0x66
0x67
0x68
0x69
0x6A
0x6B
0x6C
0x6D
0x6E
0x6F
0x70
0x71
0x72
0x73
0x74
0x75
0x76
0x77
0x78
0x7B
0x7D
0x7E
0x7F
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R
R
BHVR
BHVR
BHVR
RANGE
RANGE
RANGE
MIN3
EN2
7
7
7
7
7
7
7
7
7
HYSR1
HYSR2
RES
7
7
7
SHDN
OOL
D2
7
TDM2
DC4
FAN4
RES
BHVR
BHVR
BHVR
RANGE
RANGE
RANGE
MIN2
ACOU2
6
6
6
6
6
6
6
6
6
HYSR1
HYSR2
RES
6
6
6
CONV
R2T
D1
6
TDM2
DC3
FAN4
RES
BHVR
INV
SLOW SPIN
SPIN
BHVR
INV
SLOW SPIN
SPIN
BHVR
INV
SLOW SPIN
SPIN
RANGE RANGE THRM FREQ
FREQ
RANGE RANGE THRM FREQ
FREQ
RANGE RANGE THRM FREQ
FREQ
MIN1
SYNC EN1
ACOU ACOU
ACOU2 ACOU2 EN3
ACOU3 ACOU3
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
HYSR1 HYSR1 HYSL HYSL
HYSL
HYSR2 HYSR2 RES
RES
RES
RES
RES
RES
RES
RES
5
4
3
2
1
5
4
3
2
1
5
4
3
2
1
ATTN
AVG
AIN4
AIN3
AIN2
LT
R1T
3
VCC
1
5
FAN3 FAN2 FAN1
OVT
VCC
VCC
3
2
2.5V
LTMP
LTMP TDM1 TDM1 1
DC2
DC1
FAST BOOST PHOT
FAN3
FAN3 FAN2 FAN2
FAN1
RES
RES
AINL
AINL
TH5V
DO NOT WRITE TO THESE REGISTERS
DO NOT WRITE TO THESE REGISTERS
PWM1 Configuration Register
PWM2 Configuration Register
PWM3 Configuration Register
Remote 1 TRANGE/PWM 1 Freq
Local TRANGE/PWM 2 Freq
Remote 2 TRANGE/PWM 3 Freq
Enhance Acoustics Reg 1
Enhance Acoustics Reg 2
PWM1 Min Duty Cycle
PWM2 Min Duty Cycle
PWM3 Min Duty Cycle
Remote 1 Temp TMIN
Local Temp TMIN
Remote 2 Temp TMIN
Remote 1 THERM Limit
Local THERM Limit
Remote 2 THERM Limit
Remote 1 Local Hysteresis
Remote 2 Temp Hysteresis
XOR Tree Test Enable
Remote 1 Temperature Offset
Local Temperature Offset
Remote 2 Temperature Offset
Configuration Register 2
Interrupt Mask 1 Register
Interrupt Mask 2 Register
Extended Resolution 1
Extended Resolution 2
Configuration Register 3
Fan Pulses per Revolution
Configuration Register 4
Test Register 1
Test Register 2
–30–
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Default
Lockable?
SPIN
SPIN
SPIN
FREQ
FREQ
FREQ
ACOU
ACOU3
0
0
0
0
0
0
0
0
0
HYSL
RES
XEN
0
0
0
AIN1
2.5V
0
2.5V
0
ALERT
FAN1
AL2.5V
0x62
0x62
0x62
0xC4
0xC4
0xC4
0x00
0x00
0x80
0x80
0x80
0x5A
0x5A
0x5A
0x64
0x64
0x64
0x44
0x40
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x55
0x00
0x00
0x00
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
REV. 0
ADT7460
Table V. Voltage Reading Registers (Power-On Default = 0x00)
Register Address
R/W
Description
0x20
0x22
Read Only
Read Only
2.5 V Reading (8 MSBs of reading)
VCC Reading: measures VCC through the VCC pin (8 MSBs of reading)
These voltage readings are in twos complement format.
If the extended resolution bits of these readings are also being read, the Extended Resolution registers (Reg. 0x76, 0x77) should be read first. Once the Extended
Resolution registers get read, the associated MSB reading registers get frozen until read. Both the Extended Resolution Registers and the MSB registers get frozen.
Table VI. Temperature Reading Registers (Power-On Default = 0x80)
Register Address
R/W
Description
0x25
0x26
0x27
Read Only
Read Only
Read Only
Remote 1 Temperature Reading* (8 MSBs of reading)
Local Temperature Reading (8 MSBs of reading)
Remote 2 Temperature Reading* (8 MSBs of reading)
These temperature readings are in twos complement format.
*Note that a reading of 0x80 in a temperature reading register indicates a diode fault (open or short) on that channel. If the extended resolution bits of these readings are
also being read, the Extended Resolution registers (Reg. 0x76, 0x77) should be read first. Once the Extended Resolution registers get read, all associated MSB reading
registers get frozen until read. Both the Extended Resolution Registers and the MSB registers get frozen.
Table VII. Fan Tachometer Reading Registers (Power-On Default = 0x00)
Register Address
R/W
Description
0x28
0x29
0x2A
0x2B
0x2C
0x2D
0x2E
0x2F
Read Only
Read Only
Read Only
Read Only
Read Only
Read Only
Read Only
Read Only
TACH1 Low Byte
TACH1 High Byte
TACH2 Low Byte
TACH2 High Byte
TACH3 Low Byte
TACH3 High Byte
TACH4 Low Byte
TACH4 High Byte
These registers count the number of 11.11 µs periods (based on an internal 90 kHz clock) that occur between a number of consecutive fan TACH pulses (default = 2).
The number of TACH pulses used to count can be changed using the Fan Pulses Per Revolution Register (Reg. 0x7B). This allows the fan speed to be accurately
measured. Since a valid Fan Tachometer reading requires that two bytes are read, the low byte MUST be read first. Both the low and high bytes are then frozen until
read. At power-on, these registers contain 0x0000 until such time as the first valid fan TACH measurement is read in to these registers. This prevents false interrupts
from occurring while the fans are spinning up.
A count of 0xFFFF indicates that a fan is:
REV. 0
1. Stalled or Blocked (object jamming the fan)
2. Failed (internal circuitry destroyed)
3. Not Populated (The ADT7460 expects to see a fan connected to each TACH.
If a fan is not connected to that TACH, its TACH minimum high and low byte
should be set to 0xFFFF.)
4. Alternate Function, e.g., TACH4 reconfigured as THERM pin
5. 2-Wire Instead of 3-Wire Fan
–31–
ADT7460
Table VIII. Current PWM Duty Cycle Registers (Power-On Default = 0xFF)
Register Address
R/W
Description
0x30
0x31
0x32
Read/Write
Read/Write
Read/Write
PWM1 Current Duty Cycle (0% to 100% duty cycle = 0x00 to 0xFF)
PWM2 Current Duty Cycle (0% to 100% duty cycle = 0x00 to 0xFF)
PWM3 Current Duty Cycle (0% to 100% duty cycle = 0x00 to 0xFF)
These registers reflect the PWM duty cycle driving each fan at any given time. When in Automatic Fan Speed Control Mode, the ADT7460 reports the PWM duty
cycles back through these registers. The PWM duty cycle values will vary according to temperature in Automatic Fan Speed Control Mode. During fan startup, these
registers report back 0x00. In Software Mode, the PWM duty cycle outputs can be set to any duty cycle value by writing to these registers.
Table IX. Operating Point Registers (Power-On Default = 0x64)
Register Address
R/W*
Description
0x33
0x34
0x35
Read/Write
Read/Write
Read/Write
Remote 1 Operating Point Register (default = 100C)
Local Temp Operating Point Register (default = 100C)
Remote 2 Operating Point Register (default = 100C)
These registers set the target Operating Point for each temperature channel when the Dynamic T MIN Control feature is enabled.
The fans being controlled will be adjusted to maintain temperature about an Operating Point.
*These registers become read-only when the Configuration Register 1 Lock bit is set to 1. Any subsequent attempts to write to these registers will fail.
–32–
REV. 0
ADT7460
Table X. Register 0x36 – Dynamic TMIN Control Register 1 (Power-On Default = 0x00)
Bit
Name
R/W
Description
<0>
CYR2
Read/Write
MSB of 3-Bit Remote 2 Cycle Value. The other two bits of the code reside in Dynamic TMIN
Control Register 2 (Reg. 0x37). These three bits define the delay time between making subsequent TMIN adjustments in the control loop, in terms of number of monitoring cycles.
The system will have associated thermal time constants that need to be found to optimize
the response of fans and the control loop.
<1>
Reserved
<2>
PHTR1
Read/Write
PHTR1 = 1 copies the Remote 1 current temperature to the Remote 1 Operating Point
Register if THERM gets asserted. The operating point will contain the temperature at
which THERM is asserted. This allows the system to run as quietly as possible without
system performance being affected. PHTR1 = 0 ignores any THERM assertions on the
THERM pin. The Remote 1 Operating Point Register will reflect its programmed value.
<3>
PHTL
Read/Write
PHTL = 1 copies the local channel’s current temperature to the Local Operating Point
Register if THERM gets asserted. The operating point will contain the temperature at
which THERM is asserted. This allows the system to run as quietly as possible without
system performance being affected. PHTL = 0 ignores any THERM assertions on the
THERM pin. The Local Temp Operating Point Register will reflect its programmed value.
<4>
PHTR2
Read/Write
PHTR2 = 1 copies the Remote 2 current temperature to the Remote 2 Operating Point
Register if THERM gets asserted. The operating point will contain the temperature at
which THERM is asserted. This allows the system to run as quietly as possible without
system performance being affected. PHTR2 = 0 ignores any THERM assertions on the
THERM pin. The Remote 2 Operating Point Register will reflect its programmed value.
<5>
R1T
Read/Write
R1T = 1 enables dynamic TMIN control on the Remote 1 Temperature channel. The
chosen TMIN value will be dynamically adjusted based on the current temperature, operating point, and high and low limits for this zone. R1T = 0 disables dynamic TMIN control. The TMIN value chosen will not be adjusted and the channel will behave as described
in the Automatic Fan Control section.
<6>
LT
Read/Write
LT = 1 enables dynamic TMIN control on the Local Temperature channel. The chosen
TMIN value will be dynamically adjusted based on the current temperature, operating
point, and high and low limits for this zone. LT = 0 disables dynamic TMIN control. The
TMIN value chosen will not be adjusted and the channel will behave as described in the
Automatic Fan Control section.
<7>
R2T
Read/Write
R2T = 1 enables dynamic TMIN control on the Remote 2 Temperature channel. The
chosen TMIN value will be dynamically adjusted based on the current temperature,
operating point, and high and low limits for this zone. R2T = 0 disables dynamic TMIN
control. The TMIN value chosen will not be adjusted and the channel will behave as
described in the Automatic Fan Control section.
Read Only and Reserved for Future Use
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any subsequent attempts to write to this register will fail.
REV. 0
–33–
ADT7460
Table XI. Register 0x37 – Dynamic TMIN Control Register 2 (Power-On Default = 0x00)
Bit
Name
R/W*
Description
<2:0>
CYR1
Read/Write
3-bit Remote 1 Cycle Value. These three bits define the delay time between making subsequent TMIN adjustments in the control loop for Remote 1 channel, in terms of number of
monitoring cycles. The system will have associated thermal time constants that need to be
found to optimize the response of fans and the control loop.
BITS
000
001
010
011
100
101
110
111
<5:3>
CYL
Read/Write
CYR2
Read/Write
INCREASE CYCLE
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
1024 cycles (128 s)
3-bit Local Temp Cycle Value. These three bits define the delay time between making subsequent TMIN adjustments in the control loop for Local Temp channel, in terms of number
of monitoring cycles. The system will have associated thermal time constants that need to
be found to optimize the response of fans and the control loop.
BITS
000
001
010
011
100
101
110
111
<7:6>
DECREASE CYCLE
4 cycles (0.5 s)
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
DECREASE CYCLE
4 cycles (0.5 s)
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
INCREASE CYCLE
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
1024 cycles (128 s)
2 LSBs of 3-bit Remote 2 Cycle Value. The MSB of the 3-bit code resides in Dynamic
TMIN Control Register 1 (Reg. 0x36). These three bits define the delay time between making
subsequent TMIN adjustments in the control loop for Remote 2 channel, in terms of number of monitoring cycles. The system will have associated thermal time constants that
need to be found to optimize the response of fans and the control loop.
BITS
000
001
010
011
100
101
110
111
DECREASE CYCLE
4 cycles (0.5 s)
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
INCREASE CYCLE
8 cycles (1 s)
16 cycles (2 s)
32 cycles (4 s)
64 cycles (8 s)
128 cycles (16 s)
256 cycles (32 s)
512 cycles (64 s)
1024 cycles (128 s)
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any subsequent attempts to write to this register will fail.
–34–
REV. 0
ADT7460
Table XII. Register 0x40 – Configuration Register 1 (Power-On Default = 0x00)
Bit
Name
R/W
Description
<0>
STRT
Read/Write
Logic 1 enables monitoring and PWM control outputs based on the limit settings programmed. Logic 0 disables monitoring and PWM control based on the default power-up
limit settings. Note that the limit values programmed are preserved even if a logic 0 is
written to this bit and the default settings are enabled. This bit becomes read-only and
cannot be changed once Bit 1 (LOCK bit) has been written. All limit registers should be
programmed by BIOS before setting this bit to 1. (Lockable.)
<1>
LOCK
Write Once
Logic 1 locks all limit values to their current settings. Once this bit is set, all lockable
registers become read-only and cannot be modified until the ADT7460 is powered down
and powered up again. This prevents rogue programs such as viruses from modifying
critical system limit settings. (Lockable.)
<2>
RDY
Read Only
This bit gets set to 1 by the ADT7460 to indicate that the device is fully powered-up
and ready to begin systems monitoring.
<3>
FSPD
Read/Write
When set to 1, this runs all fans at full speed. Power-on default = 0. This bit does not
get locked at any time.
<4>
Reserved
<5>
FSPDIS
Read/Write
Logic 1 disables fan spin-up for two TACH pulses. Instead, the PWM outputs will go
high for the entire fan spin-up timeout selected.
Read Only and Reserved for Future Use
<6>
TODIS
Read/Write
When this bit is set to 1, the SMBus timeout feature is disabled. This allows the
ADT7460 to be used with SMBus controllers that cannot handle SMBus
timeouts. (Lockable.)
<7>
VCC
Read/Write
When this bit is set to 1, the ADT7460 rescales its VCC pin to measure a 5 V supply. If
this bit is 0, the ADT7460 measures VCC as a 3.3 V supply. (Lockable.)
Table XIII. Register 0x41 – Interrupt Status Register 1 (Power-On Default = 0x00)
Bit
Name
R/W
Description
<0>
2.5V
Read Only
A one indicates the 2.5 V High or Low limit has been exceeded. This bit gets cleared on
a read of the Status Register only if the error condition has subsided.
<1>
Unused
Read Only
Reserved for future use
<2>
VCC
Read Only
A one indicates the VCC High or Low limit has been exceeded. This bit gets cleared on a
read of the Status Register only if the error condition has subsided.
<3>
Unused
Read Only
Reserved for future use
<4>
R1T
Read Only
A one indicates the Remote 1 Low or High Temp limit has been exceeded. This bit gets
cleared on a read of the Status Register only if the error condition has subsided.
<5>
LT
Read Only
A one indicates the Local Low or High Temp limit has been exceeded. This bit gets
cleared on a read of the Status Register only if the error condition has subsided.
<6>
R2T
Read Only
A one indicates the Remote 2 Low or High Temp limit has been exceeded. This bit gets
cleared on a read of the Status Register only if the error condition has subsided.
<7>
OOL
Read Only
A one indicates that an Out-of-Limit event has been latched in Status Register 2. This
bit is a logical OR of all status bits in Status Register 2. Software can test this bit in
isolation to determine whether any of the voltage, temperature, or fan speed readings
represented by Status Register 2 are out-of-limit. This saves the need to read Status
Register 2 every interrupt or polling cycle.
ADOPT is a trademark of Analog Devices, Inc.
REV. 0
–35–
ADT7460
Table XIV. Register 0x42 – Interrupt Status Register 2 (Power-On Default = 0x00)
Bit
Name
R/W
Description
<0>
Unused
Read Only
Reserved for future use
<1>
OVT
Read Only
A one indicates that one of the THERM overtemperature limits has been exceeded.
This bit gets cleared on a read of the Status Register when the temperature drops below
THERM – THYST.
<2>
FAN1
Read Only
A one indicates that Fan 1 has dropped below minimum speed or has stalled.
This bit does NOT get set when the PWM 1 output is off.
<3>
FAN2
Read Only
A one indicates that Fan 2 has dropped below minimum speed or has stalled.
This bit does NOT get set when the PWM 2 output is off.
<4>
FAN3
Read Only
A one indicates that Fan 3 has dropped below minimum speed or has stalled.
This bit does NOT get set when the PWM 3 output is off.
<5>
F4P
Read Only
Read Only
A one indicates that Fan 4 has dropped below minimum speed or has stalled.
This bit does NOT get set when the PWM 3 output is off.
If Pin 9 is configured as the THERM timer input for THERM monitoring, then this bit
gets set when the THERM assertion time exceeds the limit programmed in the THERM
Limit Register (Reg. 0x7A).
<6>
D1
Read Only
A one indicates either an open or short circuit on the Thermal Diode 1 inputs.
<7>
D2
Read Only
A one indicates either an open or short circuit on the Thermal Diode 2 inputs.
Table XV. Voltage Limit Registers
Register Address
R/W
Description
Power-On Default
0x44
0x45
0x48
0x49
Read/Write
Read/Write
Read/Write
Read/Write
2.5 V Low Limit
2.5 V High Limit
VCC Low Limit
VCC High Limit
0x00
0xFF
0x00
0xFF
Setting the Configuration Register 1 Lock bit has no effect on these registers.
High Limits: An interrupt is generated when a value exceeds its high limit (> comparison).
Low Limits: An interrupt is generated when a value is equal to or below its low limit ( ≤ comparison).
Table XVI. Temperature Limit Registers
Register Address
R/W
Description
Power-On Default
0x4E
0x4F
0x50
0x51
0x52
0x53
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
Remote 1 Temp Low Limit
Remote 1 Temp High Limit
Local Temp Low Limit
Local Temp High Limit
Remote 2 Temp Low Limit
Remote 2 Temp High Limit
0x81
0x7F
0x81
0x7F
0x81
0x7F
Exceeding any of these temperature limits by 1C will cause the appropriate status bit to be set in the Interrupt Status Register. Setting the Configuration Register 1 Lock
bit has no effect on these registers.
High Limits: An interrupt is generated when a value exceeds its high limit (> comparison).
Low Limits: An interrupt is generated when a value is equal to or below its low limit ( ≤ comparison).
–36–
REV. 0
ADT7460
Table XVII. Fan Tachometer Limit Registers
Register Address
R/W
Description
Power-On Default
0x54
0x55
0x56
0x57
0x58
0x59
0x5A
0x5B
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
TACH 1 Minimum Low Byte
TACH 1 Minimum High Byte
TACH 2 Minimum Low Byte
TACH 2 Minimum High Byte
TACH 3 Minimum Low Byte
TACH 3 Minimum High Byte
TACH 4 Minimum Low Byte
TACH 4 Minimum High Byte
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
Exceeding any of the TACH limit registers by 1 indicates that the fan is running too slowly or has stalled. The appropriate status bit will be set in Interrupt Status
Register 2 to indicate the fan failure. Setting the Configuration Register 1 Lock bit has no effect on these registers.
Table XVIII. PWM Configuration Registers
Register Address
R/W*
Description
Power-On Default
0x5C
0x5D
0x5E
Read/Write
Read/Write
Read/Write
PWM1 Configuration
PWM2 Configuration
PWM3 Configuration
0x62
0x62
0x62
Bit
Name
R/W
Description
<2:0>
SPIN
Read/Write
These bits control the startup timeout for PWMx. The PWM output stays high until
two valid TACH rising edges are seen from the fan. If there is not a valid TACH signal
during the fan TACH measurement directly after the Fan Startup Timeout period, then
the TACH measurement will read 0xFFFF and Status Register 2 reflects the Fan Fault. If
the TACH Minimum High and Low Byte contains 0xFFFF or 0x0000, then the Status
Register 2 bit will not get set, even if the fan has not started.
000 = No startup timeout
001 = 100 ms
010 = 250 ms (default)
011 = 400 ms
100 = 667 ms
101 = 1 s
110 = 2 s
111 = 4 s
<3>
SLOW
Read/Write
SLOW = 1 makes the Ramp Rates for Acoustic Enhancement four times longer
<4>
INV
Read/Write
This bit inverts the PWM output. The default is 0, which corresponds to a logic high
output for 100% duty cycle. Setting this bit to 1 inverts the PWM output, so 100% duty
cycle corresponds to a logic low output.
<7:5>
BHVR
Read/Write
These bits assign each fan to a particular temperature sensor for localized cooling.
000 = Remote 1 Temp controls PWMx (Automatic Fan Control Mode)
001 = Local Temp controls PWMx (Automatic Fan Control Mode)
010 = Remote 2 Temp controls PWMx (Automatic Fan Control Mode)
011 = PWMx runs full speed (default)
100 = PWMx disabled
111 = Manual Mode. PWM Duty cycle Registers (Reg 0x30–0x32) become writable.
*These registers become read-only when the Configuration Register 1 Lock bit is set to 1. Any subsequent attempts to write to these registers will fail.
REV. 0
–37–
ADT7460
Table XIX. TEMP TRANGE/PWM Frequency Registers
Register Address
R/W*
Description
Power-On Default
0x5F
0x60
0x61
Read/Write
Read/Write
Read/Write
Remote 1 TRANGE/PWM 1 Frequency
Local Temp TRANGE/PWM 2 Frequency
Remote 2 TRANGE/PWM 3 Frequency
0xC4
0xC4
0xC4
Bit
Name
Read/Write
Description
<2:0>
FREQ
Read/Write
These bits control the PWMx frequency.
000 = 11.0 Hz
001 = 14.7 Hz
010 = 22.1 Hz
011 = 29.4 Hz
100 = 35.3 Hz (default)
101 = 44.1 Hz
110 = 58.8 Hz
111 = 88.2 Hz
<3>
THRM
Read/Write
THRM = 1 causes the THERM pin (Pin 9) to assert low as an output when this
temperature channel’s THERM limit has been exceeded by 0.25C. The THERM pin
will remain asserted until the temperature is equal to or below the THERM limit. The
minimum time that THERM asserts for is one monitoring cycle. This allows clock
modulation of devices that incorporate this feature.
THRM = 0 makes the THERM pin act as an input only, e.g., for Pentium 4 PROCHOT
monitoring, when Pin 9 is configured as THERM.
<7:4>
RANGE
Read/Write
These bits determine the PWM Duty Cycle versus Temperature Slope for
Automatic Fan Control.
0000 = 2C
0001 = 2.5C
0010 = 3.33C
0011 = 4C
0100 = 5C
0101 = 6.67C
0110 = 8C
0111 = 10C
1000 = 13.33C
1001 = 16C
1010 = 20C
1011 = 26.67C
1100 = 32C (default)
1101 = 40C
1110 = 53.33C
1111 = 80C
*These registers become read-only when the Configuration Register 1 Lock bit is set. Any further attempts to write to these registers shall have no effect.
–38–
REV. 0
ADT7460
Table XX. Register 0x62 – Enhance Acoustics Register 1 (Power-On Default = 0x00)
Bit
Name
R/W*
Description
<2:0>
ACOU
Read/Write
These bits select the Ramp Rate applied to the PWM1 output. Instead of PWM1 jumping
instantaneously to its newly calculated speed, PWM1 will ramp gracefully at the rate
determined by these bits. This feature enhances the acoustics of the fan being driven by
the PWM1 output.
Time Slot Increase
Time for 33% to 100%
000 = 1
35 s
001 = 2
17.6 s
010 = 3
1.8 s
011 = 5
7s
100 = 8
4.4 s
101 = 12
3s
110 = 24
1.6 s
111 = 48
0.8 s
<3>
EN1
Read/Write
When this bit is 1, Acoustic Enhancement is enabled on PWM1 output.
<4>
SYNC
Read/Write
SYNC = 1 synchronizes fan speed measurements on TACH2, TACH3, and TACH4 to
PWM3. This allows up to three fans to be driven from PWM3 output and their speeds to
be measured.
SYNC = 0, only TACH3 and TACH4 are synchronized to PWM3 output.
<5>
MIN1
Read/Write
When the ADT7460 is in Automatic Fan Control Mode, this bit defines whether PWM1 is
off (0% duty cycle) or at PWM 1 Minimum Duty Cycle when the controlling temperature is
below its TMIN – Hysteresis value.
0 = 0% duty cycle below TMIN – Hysteresis
1 = PWM 1 Minimum Duty Cycle below TMIN – Hysteresis
<6>
MIN2
Read/Write
When the ADT7460 is in Automatic Fan Speed Control Mode, this bit defines whether
PWM 2 is off (0% duty cycle) or at PWM 2 Minimum Duty Cycle when the controlling
temperature is below its TMIN – Hysteresis value.
0 = 0% duty cycle below TMIN – Hysteresis
1 = PWM 2 Minimum Duty Cycle below TMIN – Hysteresis
<7>
MIN3
Read/Write
When the ADT7460 is in Automatic Fan Speed Control Mode, this bit defines whether
PWM 3 is off (0% duty cycle) or at PWM 3 Minimum Duty Cycle when the controlling
temperature is below its TMIN – Hysteresis value.
0 = 0% duty cycle below TMIN – Hysteresis
1 = PWM 3 Minimum Duty Cycle below TMIN – Hysteresis
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
REV. 0
–39–
ADT7460
Table XXI. Register 0x63 – Enhance Acoustics Register 2 (Power-On Default = 0x00)
Bit
Name
R/W*
Description
<2:0>
ACOU3
Read/Write
These bits select the Ramp Rate applied to the PWM3 output. Instead of PWM3 jumping
instantaneously to its newly calculated speed, PWM3 will ramp gracefully at the rate determined
by these bits. This effect enhances the acoustics of the fan being driven by the PWM3 output.
Time Slot Increase
Time for 33% to 100%
000 = 1
35 s
001 = 2
17.6 s
010 = 3
11.8 s
011 = 5
7s
100 = 8
4.4 s
101 = 12
3s
110 = 24
1.6 s
111 = 48
0.8 s
<3>
EN3
Read/Write
When this bit is 1, Acoustic Enhancement is enabled on PWM3 output.
<6:4>
ACOU2
Read/Write
These bits select the Ramp Rate applied to the PWM2 output. Instead of PWM2 jumping
instantaneously to its newly calculated speed, PWM2 will ramp gracefully at the rate determined
by these bits. This effect enhances the acoustics of the fans being driven by the PWM2 output.
Time Slot Increase
Time for 33% to 100%
000 = 1
35 s
001 = 2
17.6 s
010 = 3
11.8 s
011 = 5
7s
100 = 8
4.4 s
101 = 12
3s
110 = 24
1.6 s
111 = 48
0.8 s
<7>
EN2
Read/Write
When this bit is 1, Acoustic Enhancement is enabled on PWM2 output.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
–40–
REV. 0
ADT7460
Table XXII. PWM Min Duty Cycle Registers
Register Address
R/W*
Description
0x64
0x65
0x66
Bit
<7:0>
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
PWM1 Min Duty Cycle
0x80 (50% duty cycle)
PWM2 Min Duty Cycle
0x80 (50% duty cycle)
PWM3 Min Duty Cycle
0x80 (50% duty cycle)
Description
These bits define the PWMMIN duty cycle for PWMx.
0x00 = 0% duty cycle (Fan off)
0x40 = 25% duty cycle
0x80 = 50% duty cycle
0xFF = 100% duty cycle (Fan full speed)
Name
PWM Duty
Cycle
Power-On Default
*These registers become read-only when the ADT7460 is in Automatic Fan Control Mode.
Table XXIII. TMIN Registers
Register Address
R/W*
Description
Power-On Default
0x67
0x68
0x69
Read/Write
Read/Write
Read/Write
Remote 1 Temp TMIN
Local Temp TMIN
Remote 2 Temp TMIN
0x5A (90C)
0x5A (90C)
0x5A (90C)
These are the T MIN registers for each temperature channel. When the temperature measured exceeds T MIN, the appropriate fan will run at minimum speed and
increase with temperature according to T RANGE.
*These registers become read-only when the Configuration Register 1 Lock bit is set. Any further attempts to write to these registers shall have no effect.
Table XXIV. THERM Limit Registers
Register Address
R/W*
Description
Power-On Default
0x6A
0x6B
0x6C
Read/Write
Read/Write
Read/Write
Remote 1 THERM Limit
Local THERM Limit
Remote 2 THERM Limit
0x64 (100C)
0x64 (100C)
0x64 (100C)
If any temperature measured exceeds its THERM limit, all PWM outputs will drive their fans at 100% duty cycle. This is a fail-safe mechanism incorporated to cool
the system in the event of a critical overtemperature. It also ensures some level of cooling in the event that software or hardware locks up. If set to 0x80, this feature is
disabled. The PWM output will remain at 100% until the temperature drops below THERM limit – Hysteresis. If the THERM pin is programmed as an output, then
exceeding these limits by 0.25C can cause the THERM pin to assert low as an output.
*These registers become read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to these registers will have no effect.
Table XXV. Temperature Hysteresis Registers
Register Address
R/W*
Description
Power-On Default
0x6D
0x6E
Read/Write
Read/Write
Remote 1, Local Temp Hysteresis
Remote 2 Temp Hysteresis
0x44
0x40
Each 4-bit value controls the amount of temperature hysteresis applied to a particular temperature channel. Once the temperature for that channel falls below its T MIN
value, the fan will remain running at PWM MIN duty cycle until the temperature = T MIN – Hysteresis. Up to 15C of hysteresis may be assigned to any temperature
channel. The hysteresis value chosen will also apply to that temperature channel if its THERM limit is exceeded. The PWM output being controlled will go to 100% if
the THERM limit is exceeded and will remain at 100% until the temperature drops below THERM – Hysteresis. For acoustic reasons, it is recommended that the
hysteresis value not be programmed less than 4C. Setting the hysteresis value lower than 4C will cause the fan to switch on and off regularly when the temperature is
close to TMIN.
*These registers become read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to these registers will have no effect.
REV. 0
–41–
ADT7460
Table XXVI. XOR Tree Test Enable
Register Address
R/W*
Description
Power-On Default
0x6F
Read/Write
XOR Tree Test Enable Register
0x00
<0>
XEN
If the XEN bit is set to 1, the device enters the XOR Tree Test Mode. Clearing the bit
removes the device from the XOR Test Mode.
<7:1>
Reserved
Unused. Do not write to these bits.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
Table XXVII. Remote 1 Temperature Offset
Register Address
R/W*
Description
Power-On Default
0x70
Read/Write
Remote 1 Temperature Offset
0x00
<7:0>
Read/Write
Allows a twos complement offset value to be automatically added to or subtracted from
the Remote 1 Temperature reading. This is to compensate for any inherent system offsets
such as PCB trace resistance. LSB value = 0.25oC.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
Table XXVIII. Local Temperature Offset
Register Address
R/W*
Description
Power-On Default
0x71
Read/Write
Local Temperature Offset
0x00
<7:0>
Read/Write
Allows a twos complement offset value to be automatically added to or subtracted from
the local temperature reading. LSB value = 0.25oC.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
Table XXIX. Remote 2 Temperature Offset
Register Address
R/W*
Description
Power-On Default
0x72
Read/Write
Remote 2 Temperature Offset
0x00
<7:0>
Read/Write
Allows a twos complement offset value to be automatically added to or subtracted from
the Remote 2 Temperature reading. This is to compensate for any inherent system offsets
such as PCB trace resistance. LSB value = 0.25oC.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
–42–
REV. 0
ADT7460
Table XXX. Register 0x73 – Configuration Register 2 (Power-On Default = 0x00)
Bit
Name
R/W*
Description
0
AIN1
Read/Write
1
AIN2
Read/Write
2
AIN3
Read/Write
3
AIN4
Read/Write
4
AVG
Read/Write
5
ATTN
Read/Write
6
CONV
Read/Write
7
SHDN
Read/Write
AIN1 = 0, Speed of 3-wire fans measured using the TACH output from the fan.
AIN1 = 1, Pin 6 is reconfigured to measure the speed of 2-wire fans using an external
sensing resistor and coupling capacitor.
AIN voltage threshold is set via Configuration Register 4 (Reg. 0x7D).
AIN2 = 0, Speed of 3-wire fans measured using the TACH output from the fan.
AIN2 = 1, Pin 7 is reconfigured to measure the speed of 2-wire fans using an external
sensing resistor and coupling capacitor.
AIN voltage threshold is set via Configuration Register 4 (Reg. 0x7D).
AIN3 = 0, Speed of 3-wire fans measured using the TACH output from the fan.
AIN3 = 1, Pin 4 is reconfigured to measure the speed of 2-wire fans using an external
sensing resistor and coupling capacitor.
AIN voltage threshold is set via Configuration Register 4 (Reg. 0x7D).
AIN4 = 0, Speed of 3-wire fans measured using the TACH output from the fan.
AIN4 = 1, Pin 9 is reconfigured to measure the speed of 2-wire fans using an external
sensing resistor and coupling capacitor.
AIN voltage threshold is set via Configuration Register 4 (Reg. 0x7D).
AVG = 1, Averaging on the temperature and voltage measurements is turned off. This
allows measurements on each channel to be made much faster.
ATTN = 1, the ADT7460 removes the attenuators from the 2.5 V input. The input can
be used for other functions such as connecting up external sensors.
CONV = 1, the ADT7460 is put into a single-channel ADC Conversion Mode. In this
mode, the ADT7460 can be made to read continuously from one input only, e.g.,
Remote 1 Temperature. It is also possible to start ADC conversions using an external
clock on Pin 6 by setting Bit 2 of Test Register 2 (Reg. 0x7F). This mode could be
useful if, for example, you wanted to characterize/profile CPU temperature quickly. The
appropriate ADC channel is selected by writing to Bits <7:5> of TACH1 Min High
Byte Register (0x55).
Bits <7:5> Reg 0x55
Channel Selected
000
2.5 V
010
VCC (3.3 V)
101
Remote 1 Temp
110
Local Temp
111
Remote 2 Temp
SHDN = 1, ADT7460 goes into Shutdown Mode. All PWM outputs assert low (or high
depending on state of INV bit) to switch off all fans. The PWM Current Duty Cycle
registers read 0x00 to indicate that the fans are not being driven.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
REV. 0
–43–
ADT7460
Table XXXI. Register 0x74 – Interrupt Mask Register 1 (Power On Default <7:0> = 0x00)
Bit
Name
R/W
Description
0
1
2
3
4
2.5 V
Unused
VCC
Unused
R1T
Read/Write
Read/Write
Read/Write
Read/Write
Read/Write
5
LT
Read/Write
6
R2T
Read/Write
7
OOL
Read/Write
A one masks SMBALERT for out-of-limit conditions on the 2.5 V channel.
Reserved for future use
A one masks SMBALERT for out-of-limit conditions on the VCC channel.
Reserved for future use
A one masks SMBALERT for out-of-limit conditions on the Remote 1
Temperature channel.
A one masks SMBALERT for out-of-limit conditions on the Local
Temperature channel.
A one masks SMBALERT for out-of-limit conditions on the Remote 2
Temperature channel.
A one masks SMBALERT for any out-of-limit condition in Status Register 2.
Table XXXII. Register 0x75 – Interrupt Mask Register 2 (Power On Default <7:0> = 0x00)
Bit
Name
R/W
Description
0
1
2
3
4
5
Unused
OVT
FAN1
FAN2
FAN3
F4P
Read/Write
Read Only
Read/Write
Read/Write
Read/Write
Read/Write
6
7
D1
D2
Read/Write
Read/Write
Reserved for future use
A one masks SMBALERT for overtemperature THERM conditions.
A one masks SMBALERT for a Fan 1 Fault.
A one masks SMBALERT for a Fan 2 Fault.
A one masks SMBALERT for a Fan 3 Fault.
A one masks SMBALERT for a Fan 4 Fault. If the TACH4 pin is being used as the
THERM input, this bit masks SMBALERT for a THERM timer event.
A one masks SMBALERT for a diode open or short on Remote 1 channel.
A one masks SMBALERT for a diode open or short on Remote 2 channel.
Table XXXIII. Register 0x76 – Extended Resolution Register 1
Bit
Name
R/W
Description
<1:0>
<3:2>
<5:4>
<7:6>
2.5 V
Unused
VCC
Unused
Read Only
Read/Write
Read Only
Read/Write
2.5 V LSBs. Holds the 2 LSBs of the 10-bit 2.5 V measurement.
Reserved for future use
VCC LSBs. Holds the 2 LSBs of the 10-bit VCC measurement.
Reserved for future use
If this register is read, this register and the registers holding the MSB of each reading are frozen until read.
Table XXXIV. Register 0x77 – Extended Resolution Register 2
Bit
Name
R/W
Description
<1:0>
<3:2>
Unused
TDM1
Read/Write
Read Only
<5:4>
LTMP
Read Only
<7:6>
TDM2
Read Only
Reserved for future use
Remote 1 Temperature LSBs. Holds the 2 LSBs of the 10-bit Remote 1
Temperature measurement.
Local Temperature LSBs. Holds the 2 LSBs of the 10-bit Local
Temperature measurement.
Remote 2 Temperature LSBs. Holds the 2 LSBs of the 10-bit Remote 2
Temperature measurement.
If this register is read, this register and the registers holding the MSB of each reading are frozen until read.
–44–
REV. 0
ADT7460
Table XXXV. Register 0x78 – Configuration Register 3 (Power-On Default = 0x00)
Bit
Name
R/W*
Description
<0>
ALERT
Read/Write
<1>
THERM
Read/Write
<2>
BOOST
Read/Write
<3>
FAST
Read/Write
<4>
<5>
<6>
<7>
DC1
DC2
DC3
DC4
Read/Write
Read/Write
Read/Write
Read/Write
ALERT = 1, Pin 5 (PWM2/SMBALERT) is configured as an SMBALERT interrupt
output to indicate out-of-limit error conditions.
THERM Timer = 1 enables THERM monitoring functionality on Pin 9 when it is
configured as THERM. When THERM is asserted, fans can be run at full speed (if the
BOOST bit is set) or a timer can be triggered to time how long THERM has been asserted for.
BOOST = 1, assertion of THERM will cause all fans to run at 100% duty cycle for
fail-safe cooling.
FAST = 1 enables fast TACH measurements on all channels. This increases the
TACH measurement rate from once per second, to once every 250 ms (4ⴛ).
DC1 = 1 enables TACH measurements to be continuously made on TACH1.
DC2 = 2 enables TACH measurements to be continuously made on TACH2.
DC3 = 1 enables TACH measurements to be continuously made on TACH3.
DC4 = 1 enables TACH measurements to be continuously made on TACH4.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
Table XXXVI. Register 0x79 – THERM Status Register (Power-On Default = 0x00)
Bit
Name
R/W
Description
<7:1>
TMR
Read Only
<0>
ASRT/TMR0
Read Only
Times how long THERM input is asserted. These seven bits will read zero until the
THERM assertion time exceeds 45.52 ms.
Gets set high on the assertion of the THERM input. Cleared on read. If the THERM
assertion time exceeds 45.52 ms, this bit gets set and becomes the LSB of the 8-bit TMR
reading. This allows THERM assertion times from 45.52 ms to 5.82 s to be reported
back with a resolution of 22.76 ms.
Bit
Name
R/W
Description
<7:0>
LIMT
Read/Write
Sets maximum THERM assertion length allowed before an interrupt is generated. This
is an 8-bit limit with a resolution of 22.76 ms allowing THERM assertion limits of 45.52 ms
to 5.82 s to be programmed. If the THERM assertion time exceeds this limit, Bit 5 (F4P)
of Interrupt Status Register 2 (Reg.0x42) will be set. If the limit value is 0x00, then an
interrupt will be generated immediately on the assertion of the THERM input.
Table XXXVII. Register 0x7A – THERM Limit Register (Power-On Default = 0x00)
REV. 0
–45–
ADT7460
Table XXXVIII. Register 0x7B – Fan Pulses Per Revolution Register (Power On Default = 0x55)
Bit
Name
R/W
Description
<1:0>
FAN1
Read/Write
<3:2>
FAN2
Read/Write
<5:4>
FAN3
Read/Write
<7:6>
FAN4
Read/Write
Sets number of pulses to be counted when measuring FAN1 speed. Can be used to
determine fan’s pulses per revolution for unknown fan type.
Pulses Counted
00 = 1
01 = 2 (default)
10 = 3
11 = 4
Sets number of pulses to be counted when measuring FAN2 speed. Can be used to
determine fan’s pulses per revolution for unknown fan type.
Pulses Counted
00 = 1
01 = 2 (default)
10 = 3
11 = 4
Sets number of pulses to be counted when measuring FAN3 speed. Can be used to
determine fan’s pulses per revolution for unknown fan type.
Pulses Counted
00 = 1
01 = 2 (default)
10 = 3
11 = 4
Sets number of pulses to be counted when measuring FAN4 speed. Can be used to
determine fan’s pulses per revolution for unknown fan type.
Pulses Counted
00 = 1
01 = 2 (default)
10 = 3
11 = 4
Table XXXIX. REGISTER 0x7D – Configuration Register 4 (Power-On Default = 0x00)
Bit
Name
R/W
Description
<0>
AL2.5V
Read/Write
<1>
<3:2>
Unused
AINL
Read Only
Read/Write
<7:4>
RES
AL2.5V = 1, Pin 14 (2.5V/SMBALERT) is configured as an SMBALERT interrupt
output to indicate out-of-limit error conditions. AL2.5V = 0, Pin 14 (2.5V/SMBALERT)
is configured as a 2.5 V measurement input.
Reserved for future use
These two bits define the input threshold for 2-wire fan speed measurements:
00 = 20 mV
01 = 40 mV
10 = 80 mV
11 = 130 mV
Unused.
*This register becomes read-only when the Configuration Register 1 Lock bit is set to 1. Any further attempts to write to this register will have no effect.
Table XL. Register 0x7E – Manufacturer’s Test Register 1 (Power On-Default = 0x00)
Bit
Name
Read/Write
Description
<7:0>
Reserved
Read Only
Manufacturer’s Test Register. These bits are reserved for manufacturer’s test purposes
and should NOT be written to under normal operation.
Table XLI. Register 0x7F – Manufacturer’s Test Register 2 (Power-On Default = 0x00)
Bit
Name
Read/Write
Description
<7:0>
Reserved
Read Only
Manufacturer’s Test Register. These bits are reserved for manufacturer’s test purposes
and should NOT be written to under normal operation.
–46–
REV. 0
ADT7460
OUTLINE DIMENSIONS
16-Lead SOIC, 0.025 Lead Pitch [QSOP]
(RQ-16)
Dimensions shown in millimeters
0.197
0.189
9
16
0.236
BSC
0.154
BSC
1
8
PIN 1
0.069
0.053
0.065
0.049
0.010
0.025
0.004
BSC
COPLANARITY
0.004
0.012
0.008
SEATING
PLANE
0.010
0.006
8ⴗ
0ⴗ
COMPLIANT TO JEDEC STANDARDS MO-137AB
REV. 0
–47–
0.050
0.016
–48–
PRINTED IN U.S.A.
C03228–0–11/02(0)