General Description
The MAX6678 monitors its own temperature and the
temperatures of two external diode-connected transistors, which typically reside on the die of a CPU or other
integrated circuit. The device reports temperature values
in digital form using a 2-wire serial interface. The
MAX6678 provides a programmable alarm output to generate interrupts, throttle signals, or overtemperature shutdown signals.
The 2-wire serial interface accepts standard System
Management Bus (SMBus)™write byte, read byte, send
byte, and receive byte commands to read the temperature data and program the alarm thresholds. The temperature data controls a PWM output signal to adjust
the speed of a cooling fan, thereby minimizing noise
when the system is running cool, but providing maximum cooling when power dissipation increases.
Five GPIO pins provide additional flexibility. The GPIO
power-up states are set by connecting the GPIO preset
inputs to ground or VCC.
The MAX6678 is available in a 20-pin QSOP package
and a 5mm x 5mm thin QFN package. It operates from
3.0V to 5.5V and consumes just 500µA of supply current.
Applications
Desktop Computers
Notebook Computers
Workstations
Servers
Networking Equipment
Features
♦ Two Thermal-Diode Inputs
♦ Local Temperature Sensor
♦ Five GPIO Input/Outputs
♦ Two PWM Outputs for Fan Drive (Open Drain; May
Be Pulled Up to +5V)
♦ Programmable Fan-Control Characteristics
♦ Automatic Fan Spin-Up Ensures Fan Start
♦ Controlled Rate of Change Ensures Unobtrusive
Fan-Speed Adjustments
♦ 1°C Remote Temperature Accuracy (+60°C to
+145°C)
♦ Temperature Monitoring Begins at POR for Fail-
Safe System Protection
♦ OT Output for Throttling or Shutdown
♦ Four Versions Available, Each with a Different
Address
♦ 5mm x 5mm TQFN Package
MAX6678
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
________________________________________________________________ Maxim Integrated Products 1
Pin Configurations
Ordering Information
19-3306; Rev 0; 5/04
For pricing, delivery, and ordering information, please contact Maxim/Dallas Direct! at
1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com.
*EP = Exposed paddle.
SMBus is a trademark of Intel Corp.
Pin Configurations continued at end of data sheet.
Typical Operating Circuit appears at end of data sheet.
CC
PRESET3
PWMOUT2
V
MAX6678
GND
DXP2
PWMOUT116GPIO0
10
PRESET2
PRESET1
OT
15
GPIO1
14
GPIO2
13
12
GPIO3
11
PRESET0
TOP VIEW
SMBDATA
SMBCLK
GPIO4
PRESET4
20 19 18 17
1
2
3
4
*CONNECT EXPOSED
5DXP1
PADDLE TO GND
6789
DXN
5mm x 5mm THIN QFN
PART TEMP RANGE
MAX6678AEP90 -40°C to +125°C 20 QSOP 1001000
MAX6678AEP92 -40°C to +125°C 20 QSOP 1001001
MAX6678AEP94 -40°C to +125°C 20 QSOP 1001010
MAX6678AEP96 -40°C to +125°C 20 QSOP 1001011
MAX6678ATP90 -40°C to +125°C
MAX6678ATP92 -40°C to +125°C
MAX6678ATP94 -40°C to +125°C
MAX6678ATP96 -40°C to +125°C
PINPACKAGE
20 Thin
QFN-EP*
20 Thin
QFN-EP*
20 Thin
QFN-EP*
20 Thin
QFN-EP*
SMBus
ADDRESS
1001000
1001001
1001010
1001011
MAX6678
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
2 _______________________________________________________________________________________
ABSOLUTE MAXIMUM RATINGS
ELECTRICAL CHARACTERISTICS
(VCC= +3.0V to +5.5V, TA= -40°C to +125°C, unless otherwise noted. Typical values are at VCC= +3.3V, TA= +25°C.)
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
VCCto GND..............................................................-0.3V to +6V
OT, SMBDATA, SMBCLK, PWMOUT_,
GPIO_ to GND ......................................................-0.3V to +6V
DXP_ to GND ..........................................-0.3V to + (V
CC
+ 0.3V)
DXN to GND ..........................................................-0.3V to +0.8V
PRESET_ to GND ....................................-0.3V to + (V
CC
+ 0.3V)
SMBDATA, OT, PWMOUT_ Current....................-1mA to +50mA
DXN Current .......................................................................±1mA
ESD Protection (all pins, Human Body Model) ..................2000V
Continuous Power Dissipation (T
A
= +70°C)
20-Pin QSOP (derate 9.1mW/°C above +70°C).......... 727mW
20-Pin TQFN (derate 34.5mW/°C above +70°C) .......2759mW
Operating Temperature Range .........................-40°C to +125°C
Junction Temperature......................................................+150°C
Storage Temperature Range ............................-65°C to +150°C
Lead Temperature (soldering, 10s) .................................+300°C
Operating Supply Voltage Range V
Operating Current I
External Temperature Error,
V
CC
Internal Temperature Error VCC = +3.3V
Temperature Resolution
Conversion Time 200 250 300 ms
PWM Frequency Tolerance (Note 1) -20 +20 %
Remote-Diode Sourcing Current
DXN Source Voltage 0.7 V
DIGITAL INPUTS AND OUTPUTS
Output Low Voltage (Sink Current)
(OT, GPIO_, SMBDATA, PWMOUT_)
Output High Leakage Current
(OT, GPIO_, SMBDATA, PWMOUT_)
Logic-Low Input Voltage (SMBDATA,
SMBCLK, PRESET_, GPIO_)
Logic-High Input Voltage (SMBDATA,
SMBCLK, PRESET_, GPIO_)
Input Leakage Current 1µA
Input Capacitance C
SMBus TIMING
Serial Clock Frequency f
PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS
CC
Interface inactive, ADC active 0.5 1 mA
S
+25°C ≤ TR ≤ +125°C,
T
= 60°C
A
= 3.3V
V
OL
I
OH
V
IL
V
IH
IN
SCLK
VCC = 3.3V
High level 80 100 120
Low level 8 10 12
I
= 6mA 0.4 V
OUT
VCC = 3V to 3.6V 0.8
VCC = 3.6V to 5.5V 0.8
VCC = 3V to 3.6V 2.1
VCC = 3.6V to 5.5V 2.1
0°C ≤ T
+25°C ≤ T
0°C ≤ T
0°C ≤ T
+25°C ≤ TR ≤ +100°C ±2.5
0°C ≤ T
≤ +145°C,
R
≤ +100°C
A
≤ +145°C,
R
≤ +125°C
A
≤ +125°C ±4
A
+3.0 +5.5 V
±1
±3
±4
1°C
8 Bits
1µA
5pF
100 kHz
°C
°C
µA
V
V
MAX6678
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
_______________________________________________________________________________________ 3
ELECTRICAL CHARACTERISTICS (continued)
(VCC= +3.0V to +5.5V, TA= -40°C to +125°C, unless otherwise noted. Typical values are at VCC= +3.3V, TA= +25°C.)
Note 1: Deviation from programmed value in Table 6.
Typical Operating Characteristics
(TA = +25°C, unless otherwise noted.)
400
440
520
480
560
600
3.0 4.03.5 4.5 5.0 5.5
OPERATING SUPPLY CURRENT
vs. SUPPLY VOLTAGE
MAX6678 toc02
SUPPLY VOLTAGE (V)
SUPPLY CURRENT (µA)
-4
-2
-3
0
-1
1
2
050
7525100
125 150
REMOTE TEMPERATURE ERROR
vs. REMOTE-DIODE TEMPERATURE
MAX6678 toc03
TEMPERATURE (°C)
TEMPERATURE ERROR (
°
C)
FAIRCHILD 2N3906
Clock Low Period t
Clock High Period t
Bus Free Time Between Stop and
Start Conditions
SMBus Start Condition Setup Time t
Start Condition Hold Time t
Stop Condition Setup Time t
Data Setup Time t
Data Hold Time t
SMBus Fall Time t
SMBus Rise Time t
SMBus Timeout t
Startup Time After POR t
PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS
LOW
HIGH
t
BUF
SU:STA
HD:STO
SU:STO
SU:DAT
HD:DAT
TIMEOUT
POR
10% to 10% 4 µs
90% to 90% 4.7 µs
4.7 µs
90% of SMBCLK to 90% of SMBDATA 4.7 µs
10% of SMBDATA to 10% of SMBCLK 4 µs
90% of SMBCLK to 10% of SMBDATA 4 µs
10% of SMBDATA to 10% of SMBCLK 250 ns
10% of SMBCLK to 10% of SMBDATA 300 ns
F
R
29 37 55 ms
300 ns
1000 ns
500 ms
MAX6678
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
4 _______________________________________________________________________________________
Typical Operating Characteristics (continued)
(TA = +25°C, unless otherwise noted.)
-3
-1
-2
1
0
2
3
05025 75 100 125
LOCAL TEMPERATURE ERROR
vs. DIE TEMPERATURE
MAX6678 toc04
TEMPERATURE (°C)
TEMPERATURE ERROR (
°
C)
-1.5
0
-0.5
-1.0
1.0
0.5
1.5
2.0
0.01 10.1 10 100 1000
REMOTE TEMPERATURE ERROR
vs. POWER-SUPPLY NOISE FREQUENCY
MAX6678 toc05
FREQUENCY (kHz)
TEMPERATURE ERROR (
°
C)
VIN = 250mV
P-P
SQUARE WAVE APPLIED
TO V
CC
WITH NO BYPASS CAPACITOR
-2.5
-1.0
-1.5
-2.0
0
-0.5
0.5
1.0
0.01 10.1 10 100 1000
LOCAL TEMPERATURE ERROR
vs. POWER-SUPPLY NOISE FREQUENCY
MAX6678 toc06
FREQUENCY (kHz)
TEMPERATURE ERROR (
°
C)
VIN = 250mV
P-P
SQUARE WAVE APPLIED
TO V
CC
WITH NO BYPASS CAPACITOR
0
1.4
1.2
1.0
0.8
0.6
0.4
0.2
1.8
1.6
2.0
0.01 10.1 10 100 1000
REMOTE TEMPERATURE ERROR
vs. COMMON-MODE NOISE FREQUENCY
MAX6678 toc07
FREQUENCY (kHz)
TEMPERATURE ERROR (
°
C)
VIN = AC-COUPLED TO DXP AND DXN
V
IN
= 100mV
P-P
SQUARE WAVE
0
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.9
0.8
1.0
0.01 10.1 10 100 1000
REMOTE TEMPERATURE ERROR
vs. DIFFERENTIAL NOISE FREQUENCY
MAX6678 toc08
FREQUENCY (kHz)
TEMPERATURE ERROR (
°
C)
VIN = AC-COUPLED TO DXP
V
IN
= 100mV
P-P
SQUARE WAVE
-6
-3
-5
-4
-1
-2
1
0
2
0.1 1 10 100
TEMPERATURE ERROR
vs. DXP-DXN CAPACITANCE
MAX6678 toc09
DXP-DXN CAPACITANCE (nF)
TEMPERATURE ERROR (
°
C)
TA = +25°C
30
31
33
32
34
35
-40 10 35-15 60 11085
PWMOUT FREQUENCY
vs. DIE TEMPERATURE
MAX6678 toc10
TEMPERATURE (°C)
PWMOUT FREQUENCY (Hz)
30
31
33
32
34
35
3.0 4.03.5 4.5 5.0 5.5
PWMOUT FREQUENCY
vs. SUPPLY VOLTAGE
MAX6678 toc11
SUPPLY VOLTAGE (V)
PWMOUT FREQUENCY (Hz)
0
100
300
200
400
500
0101552025303540
GPIO OUTPUT VOLTAGE
vs. GPIO SINK CURRENT
MAX6678 toc12
GPIO SINK CURRENT (mA)
GPIO OUTPUT VOLTAGE (mV)
Detailed Description
The MAX6678 temperature sensor and fan controller
accurately measures the temperature of either two
remote pn junctions or one remote pn junction and its
own die. The device reports temperature values in digital form using a 2-wire serial interface. The remote pn
junction is typically the emitter-base junction of a common-collector pnp on a CPU, FPGA, or ASIC. The
MAX6678 operates from supply voltages of 3.0V to
5.5V and consumes 500µA (typ) of supply current. The
temperature data controls a PWM output signal to
adjust the speed of a cooling fan. The device also features an overtemperature alarm output to generate
interrupts, throttle signals, or shutdown signals.
Five GPIO input/outputs provide additional flexibility.
The GPIO power-up states are set by connecting the
GPIO preset inputs to ground or V
CC
.
MAX6678
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
_______________________________________________________________________________________ 5
Pin Description
PIN
THIN QFN QSOP
13 SMBDATA
24 SMBCLK
3, 12, 13,
14, 16
4, 9, 10,
11, 20
5, 7 7, 9 DXP1, DXP2
68 DXN
810 GND Ground. Connect to a clean ground reference.
15 17 OT
17, 19 1, 19
18 20 V
5, 14, 15,
16, 18
2, 6, 11,
12, 13
NAME DESCRIPTION
SMBus Serial-Data Input/Output, Open Drain. Can be pulled up to 5.5V,
regardless of V
SMBus Serial-Clock Input. Can be pulled up to 5.5V, regardless of V
circuit when V
GPIO0–GPIO4
PRESET0–PRESET4 GPIO Preset Inputs. Connect to GND or V
PWMOUT1,
PWMOUT2
CC
Active-Low, Open-Drain GPIO Pins. Can be pulled up to 5.5V, regardless of
. Open circuit when VCC = 0.
V
CC
Combined Current Source and A/D Positive Input for Remote Diode. Connect to
anode of remote-diode-connected temperature-sensing transistor. Do not leave
floating; connect to DXN if no remote diode is used. Place a 2200pF capacitor
between DXP_ and DXN for noise filtering.
Combined Remote-Diode Cathode Input. Connect cathode of the remote-diodeconnected transistor to DXN.
Active-Low, Open-Drain Over-Temperature Output. Typically used for system
shutdown or clock throttling. Can be pulled up to 5.5V regardless of V
circuit when V
Open-Drain Output to Power Transistor Driving Fan. Connect to the gate of a
MOSFET or base of a transistor. PWMOUT_ requires a pullup resistor. The
pullup resistor can be connected to a supply voltage as high as 5.5V,
regardless of the MAX6678’s supply voltage.
Power-Supply Input. 3.3V nominal. Bypass VCC to GND with 0.1µF capacitor.
. Open circuit when VCC = 0.
CC
= 0.
CC
= 0.
CC
. Open
CC
to set POR value of GPIO0–GPIO4.
CC
. Open
CC
DXP1
DXN
DXP2
SMBDATA
SMBCLK
V
CC
TEMPERATURE
PROCESSING
BLOCK
PWM
GENERATOR
BLOCK
PWMOUT1
PWMOUT2
OT
GPIO0
GPIO4
PRESET0
PRESET4
SMBus
INTERFACE
AND
REGISTERS
LOGIC
MAX6678
GND
MAX6678
SMBus Digital Interface
From a software perspective, the MAX6678 appears as a
set of byte-wide registers. This device uses a standard
SMBus 2-wire/I2C-compatible serial interface to access
the internal registers. The MAX6678 has four different
slave addresses available; therefore, a maximum of four
MAX6678 devices can share the same bus.
The MAX6678 employs four standard SMBus protocols:
write byte, read byte, send byte, and receive byte
(Figures 1, 2, and 3). The shorter receive byte protocol
allows quicker transfers, provided that the correct data
register was previously selected by a read byte instruction. Use caution with the shorter protocols in multimaster
systems, since a second master could overwrite the
command byte without informing the first master.
Temperature data can be read from registers 00h and
01h. The temperature data format for these registers is
8 bits, with the LSB representing 1°C (Table 1) and the
MSB representing +128°C. The MSB is transmitted first.
All values below 0°C clip to 00h.
Table 2 details the register address and function, whether
they can be read or written to, and the power-on reset
(POR) state. See Tables 2–6 for all other register functions
and the Register Descriptions section.
Temperature Reading
The MAX6678 contains two external temperature measurement inputs to measure the die temperature of CPUs
or other ICs having on-chip temperature-sensing diodes,
or discrete diode-connected transistors as shown in the
Typical Operating Circuits. For best accuracy, the discrete diode-connected transistor should be a small-signal
device with its collector and base connected together.
The on-chip ADC converts the sensed temperature and
outputs the temperature data in the format shown in Table
1. Temperature channel 2 can be used to measure either
a remote thermal diode or the internal temperature of the
MAX6678. Bit D1 of register 02h (Table 2) selects local or
remote sensing for temperature channel 2 (1 = local). The
temperature measurement resolution is 1°C for both local
and remote temperatures. The temperature accuracy is
within ±1°C for remote temperature measurements from
+60°C to +100°C.
2-Channel Temperature Monitor with Dual Automatic
PWM Fan-Speed Controller and Five GPIOs
6 _______________________________________________________________________________________
Write Byte Format
Read Byte Format
Send Byte Format
Receive Byte Format
Slave address: equivalent to chip-select line of
a 3-wire interface
Command byte: selects which
register you are writing to
Data byte: data goes into the register
set by the command byte (to set
thresholds, configuration masks, and
sampling rate)
Slave address: equivalent
to chip-select line
Command byte: selects
which register you are
reading from
Slave address: repeated
due to change in dataflow direction
Data byte: reads from
the register set by the
command byte
Command byte: sends command with no data, usually
used for one-shot command
Data byte: reads data from
the register commanded
by the last read byte or
write byte transmission;
also used for SMBus alert
response return address
S = Start condition Shaded = Slave transmission
P = Stop condition /// = Not acknowledged
Figure 1. SMBus Protocols
S ADDRESS RD ACK DATA /// P
— 7 bits — — 8 bits — —
WRS ACK COMMAND ACK P
— — — 8 bits — —
ADDRESS
7 bits
P
1
ACK
—
DATA
8 bits
ACK
—
COMMAND
8 bits
ACK
—
WR
—
ADDRESS
7 bits
S
—
S ADDRESS WR ACK COMMAND ACK S ADDRESS
7 bits——8 bits——7 bits—
RD—ACK—DATA
8 bits
///
—
P
—