19-3682; Rev 1; 12/07 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Features ♦ 2 Thermal-Diode Inputs ♦ Up to 25kHz PWM Output Frequency ♦ 3 Selectable SMBus Addresses ♦ Local Temperature Sensor ♦ 1°C Remote Temperature Accuracy ♦ Two PWM Outputs for Fan Drive (Open Drain; Can be Pulled Up to +13.5V) ♦ Programmable Fan-Control Characteristics ♦ Automatic Fan Spin-Up Ensures Fan Start ♦ Controlled Rate-of-Change Ensures Unobtrusive Fan-Speed Adjustments ♦ ±3% Fan-Speed Measurement Accuracy ♦ Temperature Monitoring Begins at POR for FailSafe System Protection ♦ OT and THERM Outputs for Throttling or Shutdown ♦ Measures Temperatures Up to +150°C Applications Ordering Information Desktop Computers OPERATING MEASUREMENT PINPACKAGE RANGE RANGE PART Notebook Computers Projectors Servers MAX6639AEE -40°C to +125°C 0°C to +150°C 16 QSOP MAX6639ATE -40°C to +125°C 0°C to +150°C 16 TQFN (5mm x 5mm) Networking Equipment SMBus is a trademark of Intel Corp. Typical Application Circuit appears at end of data sheet. MAX6639 THERM 6 11 DXN OT 7 10 GND 9 VCC 8 QSOP 9 SCL 13 8 DXP1 SDA 14 7 GND 6 VCC 5 OT 13 ADD 12 DXP2 FANFAIL 5 10 DXP1 MAX6639 PWM1 15 *CONNECT EXPOSED PADDLE TO GND TACH1 16 1 PWM2 TACH2 4 DXN 14 ALERT 11 2 3 4 THERM 15 SDA PWM2 3 DXP2 TACH1 2 12 FANFAIL 16 SCL TACH2 PWM1 1 ADD TOP VIEW ALERT Pin Configurations THIN QFN 5 mm x 5 mm ________________________________________________________________ Maxim Integrated Products For pricing, delivery, and ordering information, please contact Maxim Direct at 1-888-629-4642, or visit Maxim's website at www.maxim-ic.com. 1 MAX6639 General Description The MAX6639 monitors its own temperature and one external diode-connected transistor or the temperatures of two external diode-connected transistors, typically available in CPUs, FPGAs, or GPUs. The 2-wire serial interface accepts standard System Management Bus (SMBus TM ) write byte, read byte, send byte, and receive byte commands to read the temperature data and program the alarm thresholds. Temperature data can be read at any time over the SMBus, and three programmable alarm outputs can be used to generate interrupts, throttle signals, or overtemperature shutdown signals. The temperature data is also used by the internal dualPWM fan-speed controller to adjust the speed of up to two cooling fans, thereby minimizing noise when the system is running cool, but providing maximum cooling when power dissipation increases. Speed control is accomplished by tachometer feedback from the fan, so that the speed of the fan is controlled, not just the PWM duty cycle. Accuracy of speed measurement is ±4%. The MAX6639 is available in 16-pin QSOP and 16-pin thin QFN 5mm x 5mm packages. It operates from 3.0V to 3.6V and consumes just 500µA of supply current. MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller ABSOLUTE MAXIMUM RATINGS VCC to GND ..............................................................-0.3V to +6V PWM1, PWM2, TACH1, and TACH2 to GND ......-0.3V to +13.5V DXP1 and DXP2 to GND ..........................-0.3V to +(VCC + 0.3V) DXN to GND ..........................................................-0.3V to +0.8V SCL, SDA, THERM, OT, FANFAIL, ADD, and ALERT to GND ..............................................-0.3V to +6V SDA, OT, THERM, ALERT, FANFAIL, PWM1, and PWM2 Current .............................-1mA to +50mA DXN Current .......................................................................±1mA ESD Protection (all pins, Human Body Model) ..................2000V Continuous Power Dissipation (TA = +70°C) 16-Pin QSOP (derated 8.3mW/°C above +70°C) ....... 667mW 16-Pin TQFN 5mm x 5mm (derated at 33.3mW/°C above +70°C)................2666.7mW 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 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. ELECTRICAL CHARACTERISTICS (VCC = +3.0V to +3.6V, TA = 0°C to +125°C, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +85°C.) (Note 1) PARAMETER SYMBOL Operating Supply Voltage Range VCC CONDITIONS Standby Current SMB static, sleep mode Operating Current Interface inactive, ADC active External Temperature Error Internal Temperature Error MIN 3 10 µA 0.5 1 mA ±2.5 VCC = +3.3V, 0°C ≤ TR ≤ +145°C ±3.8 VCC = +3.3V, +25°C ≤ TA ≤ +100°C ±2 VCC = +3.3V, 0°C ≤ TA ≤ +125°C ±4 PWM Frequency Error °C °C ±0.2 °C/V +0.125 °C 11 Bits 125 Conversion-Rate Timing Error 2 V VCC = +3.3V, +40°C ≤ TA ≤ +100°C and 0°C ≤ TR ≤ +145°C Conversion Time DXN Source Voltage UNITS +3.6 ±1 Temperature Resolution Remote-Diode Sourcing Current MAX VCC = +3.3V, +60°C ≤ TA ≤ +100°C and +60°C ≤ TR ≤ +100°C Supply Sensitivity of Temperature Measurement Tachometer Accuracy TYP +3.0 ms -10 +10 % -10 +10 % ±3 % TA = +60°C to +100°C High level 70 100 130 Low level 7.0 10 13.0 0.7 _______________________________________________________________________________________ µA V 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller (VCC = +3.0V to +3.6V, TA = 0°C to +125°C, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +85°C.) (Note 1) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS DIGITAL INPUTS AND OUTPUTS ALERT, FANFAIL, THERM, OT, SDA ISINK = 6mA 0.4 PWM1, PWM2, ISINK = 4mA 0.4 Output Low Voltage (Sink Current) (OT, ALERT, FANFAIL, THERM, SDA, PWM1, and PWM2) VOL Output High Leakage Current (OT, ALERT, FANFAIL, THERM, SDA, PWM1, and PWM2) IOH 1 µA Logic-Low Input Voltage (SDA, SCL, THERM, TACH1, TACH2) VIL 0.8 V Logic-High Input Voltage (SDA, SCL, THERM, TACH1, TACH2) VIH Input Leakage Current (SDA, SCL, THERM, TACH1, TACH2) Input Capacitance VCC = 3.3V 2.1 V VIN = VCC or GND 1 CIN V 5 µA pF SMBus TIMING (Note 2) Serial Clock Frequency fSCL (Note 3) 10 Clock Low Period tLOW 10% to 10% 4 µs Clock High Period Bus Free Time Between STOP and START Conditions SMBus START Condition Setup Time START Condition Hold Time tHIGH 90% to 90% 4.7 µs 4.7 µs tSU:STA 90% of SMBCLK to 90% of SMBDATA 4.7 µs tHD:STO 10% of SDA to 10% of SCL 4 µs STOP Condition Setup Time tSU:STO 90% of SCL to 10% of SDA 4 µs Data Setup Time tSU:DAT 10% of SDA to 10% of SCL 250 ns Data Hold Time tHD:DAT 10% of SCL to 10% of SDA (Note 4) 300 ns tBUF 100 kHz SMBus Fall Time tF 300 ns SMBus Rise Time tR 1000 ns 90 ms SMBus Timeout Note 1: Note 2: Note 3: Note 4: tTIMEOUT 58 74 All parameters tested at a single temperature. Specifications are guaranteed by design. Timing specifications guaranteed by design. The serial interface resets when SCL is low for more than tTIMEOUT. A transition must internally provide at least a hold time to bridge the undefined region (300ns max) of SCL's falling edge. _______________________________________________________________________________________ 3 MAX6639 ELECTRICAL CHARACTERISTICS (continued) Typical Operating Characteristics (VCC = 3.3V, TA = +25°C.) 700 SUPPLY CURRENT (μA) 8 7 6 5 4 3 2 2 TEMPERATURE ERROR (°C) 9 MAX6639 toc02 800 MAX6639 toc01 10 600 500 400 1 0 -1 300 1 FAIRCHILD 2N3906 0 3.5 4.0 4.5 5.0 5.5 4.5 5.0 0 5.5 50 75 100 LOCAL TEMPERATURE ERROR vs. POWER-SUPPLY NOISE FREQUENCY TEMPERATURE ERROR (°C) 1.5 -1.0 VIN = 250mVP-P SQUARE WAVE APPLIED TO VCC WITH NO BYPASS CAPACITOR 2.0 1.0 0.5 0 -0.5 -1.0 -1.5 25 50 75 100 0.5 0 -0.5 -1.0 -2.0 10 125 1.0 -1.5 -2.0 -2.0 VIN = 250mVP-P SQUARE WAVE APPLIED TO VCC WITH NO BYPASS CAPACITOR 1.5 TEMPERATURE ERROR (°C) 2.0 MAX6639 toc04 -0.5 100 1k 10k 100k 1 10 100 1k 10k TEMPERATURE (°C) FREQUENCY (Hz) FREQUENCY (Hz) REMOTE TEMPERATURE ERROR vs. COMMON-MODE NOISE FREQUENCY REMOTE TEMPERATURE ERROR vs. DIFFERENTIAL NOISE FREQUENCY TEMPERATURE ERROR vs. DXP-DXN CAPACITANCE 1.0 0.5 0 -0.5 -1.0 -1.5 1.0 0.5 0 -0.5 -1.0 10 100 1k FREQUENCY (Hz) 10k 100k 0 -1.0 -2.0 -3.0 -4.0 -6.0 -2.0 1 1.0 -5.0 -1.5 -2.0 100k MAX6639 toc09 VIN = AC-COUPLED TO DXP VIN = 100mVP-P SQUARE WAVE TEMPERATURE ERROR (°C) TEMPERATURE ERROR (°C) 1.5 2.0 MAX6639 toc08 2.0 MAX6639 toc07 VIN = AC-COUPLED TO DXP AND DXN VIN = 100mVP-P SQUARE WAVE 0.1 125 REMOTE TEMPERATURE ERROR vs. POWER-SUPPLY NOISE FREQUENCY 0 0 25 LOCAL TEMPERATURE ERROR vs. DIE TEMPERATURE -1.5 4 4.0 TEMPERATURE (°C) 0.5 1.5 3.5 SUPPLY VOLTAGE (V) 1.0 TEMPERATURE ERROR (°C) 3.0 SUPPLY VOLTAGE (V) MAX6639 toc05 3.0 2.0 -2 200 MAX6639 toc06 SUPPLY CURRENT (μA) REMOTE TEMPERATURE ERROR vs. REMOTE-DIODE TEMPERATURE OPERATING SUPPLY CURRENT vs. SUPPLY VOLTAGE MAX6639 toc03 STANDBY SUPPLY CURRENT vs. SUPPLY VOLTAGE TEMPERATURE ERROR (°C) MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller 10 100 1k FREQUENCY (Hz) 10k 100k 0.1 1 10 DXP-DXN CAPACITANCE (nF) _______________________________________________________________________________________ 100 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller PWMOUT FREQUENCY vs. SUPPLY VOLTAGE PWMOUT FREQUENCY vs. DIE TEMPERATURE 34 33 32 MAX6639 toc11 MAX6639 toc10 35 PWMOUT FREQUENCY (Hz) PWMOUT FREQUENCY (Hz) 35 34 33 32 31 31 30 30 -40 -15 10 35 60 85 3.0 110 TEMPERATURE (°C) 3.5 4.0 4.5 5.0 5.5 SUPPLY VOLTAGE (V) Pin Description PIN NAME FUNCTION TQFN QSOP 1, 15 3, 1 PWM2, PWM1 Open-Drain Output to Power-Transistor Driving Fan. Connect to the gate of a MOSFET or base of a bipolar transistor. PWM_ requires a pullup resistor. The pullup resistor can be connected to a supply voltage as high as 13.5V, regardless of the MAX6639’s supply voltage. 2, 16 4, 2 TACH2, TACH1 Tachometer Inputs. Connect to the tachometer output of the fan. TACH_ requires a pullup resistor. The pullup resistor can be connected to a supply voltage as high as 13.5V, regardless of the MAX6639’s supply voltage. 3 5 4 6 THERM 5 7 OT Active-Low, Open-Drain Overtemperature Output. Typically used for system shutdown or clock throttling. Can be pulled up to 5.5V regardless of VCC. Open circuit when VCC = 0. FANFAIL Active-Low, Open-Drain, Fan-Failure Output. Open circuit when VCC = 0. Active-Low, Open-Drain Thermal Alarm Output. Typically used for clock throttling. Open circuit when VCC = 0. 6 8 VCC Power-Supply Input. 3.3V nominal. Bypass VCC to GND with a 0.1µF capacitor. 7 10 GND Ground. Connect to a clean ground reference. 8, 10 9, 12 DXP1, DXP2 Combined Current Source and A/D Positive Input for Remote Diode. Connect to anode of remote-diodeconnected 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. 9 11 DXN Connect Cathode of the Remote-Diode-Connected Transistor to DXN 11 13 ADD Address Input. Sets device slave address. Connect to GND, VCC, or leave floating to give three unique addresses. See Table 1. 12 14 ALERT 13 16 SCL SMBus Serial-Clock Input. Can be pulled up to 5.5V regardless of VCC. Open circuit when VCC = 0. SDA SMBus Serial-Data Input/Output, Open Drain. Can be pulled up to 5.5V regardless of VCC. Open circuit when VCC = 0. 14 15 Active-Low, Open-Drain SMBus Alert Output _______________________________________________________________________________________ 5 MAX6639 Typical Operating Characteristics (continued) (VCC = 3.3V, TA = +25°C.) MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Detailed Description Block Diagram The MAX6639 monitors its own temperature and a remote-diode-connected transistor or the temperatures of two external-diode-connected transistors, which typically reside on the die of a CPU or other integrated circuit. The 2-wire serial interface accepts standard SMBus write byte, read byte, send byte, and receive byte commands to read the temperature data and program the alarm thresholds. Temperature data can be read at any time over the SMBus, and a programmable alarm output can be used to generate interrupts, throttle signals, or overtemperature shutdown signals. The temperature data is also used by the internal dualPWM fan-speed controller to adjust the speed of up to two cooling fans, thereby minimizing noise when the system is running cool, but providing maximum cooling when power dissipation increases. RPM feedback allows the MAX6639 to control the fan’s actual speed. VCC MAX6639 DXP1 DXN DXP2 PWM1 PWM GENERATOR BLOCK TEMPERATURE PROCESSING BLOCK PWM2 OT THERM ADD SDA LOGIC SMBus INTERFACE AND REGISTERS FANFAIL ALERT TACH1 SCL TACH2 GND Write Byte Format S ADDRESS WR ACK COMMAND 7 bits ACK DATA 8 bits Slave Address: equivalent to chip-select line of a 3-wire interface ACK P 8 bits Command Byte: selects which register you are writing to 1 Data Byte: data goes into the register set by the command byte (to set thresholds, configuration masks, and sampling rate) Read Byte Format S ADDRESS WR ACK 7 bits COMMAND ACK WR 7 bits Command Byte: selects which register you are reading from ACK DATA P Data Byte: reads from the register set by the command byte Receive Byte Format ACK COMMAND ACK P S 8 bits SHADED = SLAVE TRANSMISSION /// = NOT ACKNOWLEDGED ADDRESS 7 bits RD ACK DATA /// P 8 bits 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 Figure 1. SMBus Protocols 6 /// 8 bits Slave Address: repeated due to change in dataflow direction Command Byte: sends command with no data, usually used for one-shot command S = START CONDITION P = STOP CONDITION RD 7 bits Send Byte Format ADDRESS ADDRESS 8 bits Slave Address: equivalent to chip-select line S S _______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller B tLOW C D E F G H tHIGH I J K L MAX6639 A M SCL SDA tSU:STA tHD:STA tSU:STO tSU:DAT A = START CONDITION B = MSB OF ADDRESS CLOCKED INTO SLAVE C = LSB OF ADDRESS CLOCKED INTO SLAVE D = R/W BIT CLOCKED INTO SLAVE E = SLAVE PULLS SMBDATA LINE LOW F = ACKNOWLEDGE BIT CLOCKED INTO MASTER G = MSB OF DATA CLOCKED INTO SLAVE H = LSB OF DATA CLOCKED INTO SLAVE tBUF I = MASTER PULLS DATA LINE LOW J = ACKNOWLEDGE CLOCKED INTO SLAVE K = ACKNOWLEDGE CLOCK PULSE L = STOP CONDITION M = NEW START CONDITION Figure 2. SMBus Write Timing Diagram A tLOW B tHIGH C D E F G H I J K M L SCL SDA tSU:STA tHD:STA tSU:DAT A = START CONDITION B = MSB OF ADDRESS CLOCKED INTO SLAVE C = LSB OF ADDRESS CLOCKED INTO SLAVE D = R/W BIT CLOCKED INTO SLAVE E = SLAVE PULLS SMBDATA LINE LOW tHD:DAT F = ACKNOWLEDGE BIT CLOCKED INTO MASTER G = MSB OF DATA CLOCKED INTO MASTER H = LSB OF DATA CLOCKED INTO MASTER I = MASTER PULLS DATA LINE LOW Figure 3. SMBus Read Timing Diagram tSU:STO tBUF J = ACKNOWLEDGE CLOCKED INTO SLAVE K = ACKNOWLEDGE CLOCK PULSE L = STOP CONDITION M = NEW START CONDITION Table 1. I2C Slave Address SMBus Digital Interface From a software perspective, the MAX6639 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 MAX6639 features an address select input (ADD) that allows the MAX6639 to have three unique addresses (see Table 1). The MAX6639 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. Table 4 details the register addresses and functions, whether they can be read or written to, and the power- I2C SLAVE ADDRESS BINARY EQUIVALENT VCC 5Eh 0101 111 Floating 5Ch 0101 110 GND 58h 0101 100 ADD INPUT STATE on reset (POR) state. See Tables 5–9 for all other register functions and the Register Descriptions section. Temperature Reading 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 2) and the MSB representing +128°C. The MSB is transmitted first. Three additional temperature bits provide resolution down to 0.125°C and are in the channel 1 extended temperature (05h) and channel 2 extended temperature (06h) registers. All values below 0°C clip to 00h. _______________________________________________________________________________________ 7 MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Table 2. Temperature Data Byte Format TEMP (°C) TEMP (°C) DIGITAL OUTPUT 241 +241 1111 0001 240 +240 1111 0000 126 +126 0111 1110 25 +25 0001 1001 1.50 1 0000 0001 0.00 0 0000 0000 The MAX6639 employs a register lock mechanism to avoid getting temperature results from the temperature register and the extended temperature register sampled at two different time points. Reading the extended register stops the MAX6639 from updating the temperature register for at least 0.25s, unless there is a temperature register read before the scheduled update. This allows enough time to read the main register before it is updated, thereby preventing reading the temperature register data from one conversion and the extended temperature register data from a different conversion. The MAX6639 measures the temperature at a fixed rate of 4Hz immediately after it is powered on. Setting bit 7 of the configuration register (04h) shuts down the temperature measurement cycle. OT Output When a measured temperature exceeds the corresponding OT temperature threshold and OT is not masked, the associated OT status register bit sets and the OT output asserts. If OT for the respective channel is masked, the OT status register sets, but the OT output does not assert. To deassert the OT output and the associated status register bit, either the measured temperature must fall at least 5°C below the trip threshold or the trip threshold must be increased to at least 5°C above the current measured temperature. THERM When a measured temperature exceeds the corresponding THERM temperature threshold and THERM is not masked, the associated THERM status register bit is set and the THERM output asserts. If THERM for the respective channel is masked, the THERM status register is set, but the THERM output does not assert. To deassert the THERM output and the associated status register bit, either the measured temperature must fall at least 5°C below the trip threshold or the trip threshold must be increased to at least 5°C above the current measured temperature. Asserting THERM internally or externally forces both PWM outputs to 100% duty cycle 8 when bit 6 in address 13h (fan 1) or bit 6 in address 17h (fan 2) is set. ALERT The ALERT output asserts to indicate that a measured temperature exceeds the ALERT trip threshold for that temperature channel. The status bit and the ALERT output clear by reading the ALERT status register. If the ALERT status bit is cleared, but the temperature still exceeds the ALERT temperature threshold, ALERT reasserts on the next conversion, and the status bit sets again. A successful alert response protocol clears ALERT but does not affect the ALERT status bit. TACH1 and TACH2 Inputs To measure the fan speed, the MAX6639 has two tachometers. Each tachometer has an accurate internal clock to count the time elapsed in one revolution. Therefore, it is counting the time between two tachometer pulses for a fan with four poles. When the PWM signal is used to directly modulate the fan’s power supply, the PWM frequency is normally in the 20Hz to 100Hz range. In this case, the time required for one revolution may be longer than the PWM on-time. For this reason, the PWM pulses are periodically stretched to allow tachometer measurement over a full revolution. Turn off pulse stretching by setting bit 5 of register 13h or register 17h when using a 4-wire fan. The tachometer count is inversely proportional to the fan’s RPM. The tachometer count data is stored in register 20h (for TACH1) and register 21h (for TACH2). Reading a value of 255 from the TACH count register means the fan’s RPM is zero or too slow for the range. Reading a value of zero in the TACH count register means the fan’s RPM is higher than the range selected. Table 2 shows the fan’s available RPM ranges. Use registers 10h or 14h to select the appropriate RPM range for the fan being used. FANFAIL The FANFAIL output asserts to indicate that one of the fans has failed or is spinning slower than the required speed. The MAX6639 detects fan fault depending on the fan-control mode. In PWM mode, the MAX6639 produces a square wave with a duty cycle set by the value Table 3. Tachometer Setting FAN RPM RANGE INTERNAL CLOCK FREQUENCY (kHz) 2000 1 4000 2 8000 4 16,000 8 _______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller (changes by 1/120 every 4s). See Table 5 and the Fan 1 and 2 Configuration 1 (10h and 14h) section. Manual RPM Control Mode Enter manual RPM control mode by setting bits 2, 3, and 7 of the fan 1 or 2 configuration 1 register (10h and 14h) to zero. In the manual RPM control mode, the MAX6639 adjusts the duty cycle and measures the fan speed. Enter the target tachometer count in register 22h for fan 1 and register 23h for fan 2. The MAX6639 compares the target tachometer count with the measured tachometer count and adjusts the duty cycle so that the fan speed gradually approaches the target tachometer count. The first time manual RPM control mode is entered, the initial PWM duty cycle is determined by the target tachometer count: Initial duty cycle = 255 − t arg etTACH 2 Fan-Speed Control The MAX6639 adjusts fan speed by controlling the duty cycle of a PWM signal. This PWM signal then either modulates the DC brushless fan’s power supply or drives a speed-control input on a fan that is equipped with one. There are three speed-control modes: PWM, in which the PWM duty cycle is directly programmed over the SMBus; manual RPM, in which the desired tachometer count is programmed into a register and the MAX6639 adjusts its duty cycle to achieve the desired tachometer count; and automatic RPM, in which the tachometer count is adjusted based on a programmed temperature profile. The MAX6639 divides each PWM cycle into 120 time slots. Registers 26h and 27h contain the current values of the duty cycles for PWM1 and PWM2, expressed as the effective time-slot length. For example, the PWM1 output duty cycle is 25% when register 26h reads 1Eh (30/120). PWM Control Mode Enter PWM mode by setting bit 7 of the fan 1 or 2 configuration 1 register (10h and 14h) to 1. In PWM control mode, the MAX6639 generates PWM signals whose duty cycles are specified by writing the desired values to fan duty-cycle registers 26h and 27h. When a new duty-cycle value is written into one of the fan duty-cycle registers, the duty cycle changes to the new value at a rate determined by the rate-of-change bits [6:4] in the fan 1 or 2 configuration 1 register. The rate-of-change of the duty cycle ranges from 000 (immediately changes to the new programmed value) to 111 where targetTACH is the value of the target tachometer count in the target tach count register (22h or 23h). If the initial duty-cycle value is over 120, the duty cycle is 100%. If spin-up is enabled (bit 7 in registers 13h and 17h) and the fan is not already spinning, the duty cycle first goes to 100% and then goes to the initial duty-cycle value. Every 2s, the MAX6639 counts the fan’s period by counting the number of pulses stored in registers 24h and 25h. If the count is different from the target count, the duty cycle is adjusted. If a nonzero rate-of-change is selected, the duty cycle changes at the specified rate until the tachometer count is within ±5 of the target. Then the MAX6639 gets into a locked state and updates the duty cycle every 2s. Automatic RPM Control Mode In the automatic RPM control mode, the MAX6639 measures temperature, sets a target tachometer count based on the measured temperature, and then adjusts the duty cycle so the fan spins at the desired speed. Enter this mode by setting bit 7 of the fan 1 or 2 configuration 1 register (10h and 14h) to zero and selecting the temperature channel that controls the fan speed using bits 2 and 3 of the configuration register. In both RPM modes (automatic and manual), the MAX6639 implements a low limit for the tachometer counts. This limits the maximum speed of the fan by ensuring that the fan’s tachometer count does not go lower than the tachometer count specified by bits 5 through 0 of register 24h for fan 1 and register 25h for fan 2. Typical values for the minimum tachometer count _______________________________________________________________________________________ 9 MAX6639 written to the duty-cycle registers (26h and 27h). In this mode, the MAX6639 signals a fan fault when the tachometer count is greater than the maximum tachometer count value stored in the appropriate register (22h and 23h). After the MAX6639 asserts FANFAIL, the fan with a tachometer fault goes to full speed for 2s in an attempt to restart the fan and then returns to the original duty-cycle settings. Reading the status register clears the FANFAIL status bits and the output. The MAX6639 measures the fan speed again after 2s. The MAX6639 asserts FANFAIL if it detects the fan fault again. In RPM mode (either automatic or manual), the MAX6639 checks for fan failure only when the duty cycle reaches 100%. It asserts FANFAIL when the tachometer count is greater than twice the target tachometer count. In manual RPM mode, registers 22h and 23h store the target tachometer count value. In automatic RPM mode, these registers store the maximum tachometer count. MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller RPM TACH 0xFFh TMIN-5 TMIN TB TEMPERATURE RPMMAX TACHB+1 TACHMAX TACHA+1 TACHA+1 TACHB+1 TACHMIN RPMMIN TEMPERATURE 0 TMIN-5 TMIN TB Figure 4. Tachometer Target Calculation Figure 5. RPM Target Calculation are 30h to 60h. Set the value to correspond to the fullrated RPM of the fan. See Figure 4. Figure 5 shows how the MAX6639 calculates the target tachometer value based on the measured temperature. At TMIN, the fan spins at a minimum speed value corresponding to the maximum tachometer count value stored in register 22h or 23h. Bit 0 of register 11h (fan 1) and register 15h (fan 2) selects the behavior below TMIN. If bit 0 is equal to zero, the fan is completely off below TMIN. When the temperature is falling, it must drop 5°C below TMIN before the fan turns off. If bit 0 is set to 1, the fan does not turn off below T MIN , but instead stays at the maximum tachometer count in register 22h or 23h. When the measured temperature is higher than TMIN, the MAX6639 calculates the target tachometer count value based on two linear equations. The target tachometer count decreases by the tach step size value stored in bits 7 through 4 of registers 11h and 15h each time the measured temperature increases by the temperature step size value stored in bits 2 and 3 of registers 11h and 15h. As the measured temperature continues to increase, a second tachometer step size goes into effect. Bits 3 through 0 of register 12h and 16h select the number temperature/PWM steps after which the new step size takes effect. The new step size is selected by bits 7 to 4 of registers 12h and 16h. for remote diode 2 or the local sensor (selectable by bit 4 in the global configuration register) is in the channel 2 temperature register. Three additional temperature bits provide resolution down to 0.125°C and are in the channel 1 extended temperature (05h) and channel 2 extended temperature (06h) registers. The channel 1 and channel 2 temperature registers do not update until at least 250ms after the access of the associated extended temperature registers. All values below 0°C return 00h. Register Descriptions Channel 1 and Channel 2 Temperature Registers (00h and 01h) These registers contain the results of temperature measurements. The MSB has a weight of +128°C and the LSB +1°C. Temperature data for remote diode 1 is in the channel 1 temperature register. Temperature data 10 Status Register (02h) A 1 indicates that an ALERT, THERM, OT, or fan fault has occurred. Reading this register clears bits 7, 6, 1, and 0. Reading the register also clears the ALERT and FANFAIL outputs, but not the THERM and OT outputs. If the fault is still present on the next temperature measurement cycle, any cleared bits and outputs are set again. A successful alert response clears the values on the outputs but does not clear the status register bits. The ALERT bits assert when the measured temperature is higher than the respective thresholds. The THERM and OT outputs behave like comparators with 5°C hysteresis. Mask Register (03h) This register masks the ALERT, OT, THERM, and FANFAIL outputs. A 1 prevents the corresponding failures from being asserted on these outputs. The mask bits do not affect the status register. Global Configuration Register (04h) The global configuration register controls the shutdown mode, power-on reset, SMBus timeout, and temperature channel 2 source select: • D7: Run/Standby. Normal operation is run (0). Setting this bit to 1 suspends conversions and puts ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller READ/ WRITE REGISTER POR FUNCTION NO. STATE ADDRESS D7 D6 D5 D4 D3 D2 D1 D0 R 00h 0000 0000 Temperature MSB channel 1 (+128°C) — — — — — — LSB (1°C) R 01h 0000 0000 Temperature MSB channel 2 (+128°C) — — — — — — LSB (1°C) R 02h 0000 0000 Status byte Channel 1 Channel 2 Channel 1 Channel 2 Channel 1 Channel 2 Fan 1 fault ALERT ALERT THERM THERM OT OT Fan 2 fault R/W 03h 0000 0011 Output mask Channel 1 Channel 2 Channel 1 Channel 2 Channel 1 Channel 2 Fan 1 fault ALERT ALERT THERM THERM OT OT Fan 2 fault SMBus Temp PWM timeout: channel 2 output 0= source: Reserved Reserved Reserved enabled, 1 = local, frequency 0 = remote range 1= disabled 2 Run 0 = run, 1= stby POR: 1 = reset MSB (0.5°C) — LSB Reserved Reserved Reserved Reserved (0.125°C) Diode fault MSB (0.5°C) — LSB Reserved Reserved Reserved Reserved (0.125°C) Diode fault Channel 1 ALERT limit MSB — — — — — — LSB (1°C) 0101 0101 Channel 2 ALERT limit MSB — — — — — — LSB (1°C) 0Ah 0110 1110 Channel 1 OT limit MSB — — — — — — LSB (1°C) R/W 0Bh 0110 1110 Channel 2 OT limit MSB — — — — — — LSB (1°C) R/W 0Ch 0101 0101 Channel 1 THERM limit MSB — — — — — — LSB (1°C) R/W 0Dh 0101 0101 Channel 2 THERM limit MSB — — — — — — LSB (1°C) R/W 10h 1000 0010 Fan 1 configuration 1 PWM mode Rate of change (MSB) Rate of change Rate of change (LSB) Fan 1 Fan 1 channel 1 channel 2 control control RPM range select R/W 11h 0000 0000 Fan 1 RPM step- Temp Temp RPM stepRPM step- RPM stepConfiguration size A size A step-size step-size size A size A 2a (MSB) (LSB) A (MSB) A (LSB) PWM Polarity R/W 04h 0011 0000 R 05h 0000 0000 R 06h 0000 0000 R/W 08h 0101 0101 R/W 09h R/W Global configuration Channel 1 extended temperature Channel 2 extended temperature RPM range select Minimum fan speed: 0 = 0%, 1= value ______________________________________________________________________________________ 11 MAX6639 Table 4. Register Map MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Table 4. Register Map (continued) READ/ WRITE REGISTER POR NO. FUNCTION STATE ADDRESS D7 D6 D5 D4 D3 D2 D1 D0 R/W 12h Fan 1 Start RPM Start RPM step0000 RPM step- RPM stepStart step- Start stepstep-size step-size step-size configuration size B 0000 size B size B size B size B (LSB) B (LSB) B (MSB) 2b (MSB) B R/W 13h Fan 1 0100 configuration 0001 3 Spin-up disable R/W 14h Fan 2 1000 configuration 0010 1 PWM mode R/W Pulse Fan PWM THERM to full-speed stretching Reserved Reserved Reserved frequency disable enable (MSB) Fan PWM frequency (LSB) Step-size Fan 2 Fan 2 Step-size Step-size delay delay channel 1 channel 2 delay (MSB) (LSB) control control RPM range select RPM range select 15h Fan 2 Temp Temp RPM stepRPM 0000 RPM step- RPM stepconfiguration size A step-size step-size step-size 0000 size A size A 2a (MSB) A (LSB) A (MSB) A (LSB) PWM 100% duty cycle Minimum fan speed: 0 = 0%, 1= value in 22h R/W 16h Fan 2 Start RPM stepRPM Start 0000 RPM step- RPM stepStart step- Start stepconfiguration size B step-size step-size step-size 0000 size B size B size B size B (LSB) 2b (MSB) B B (LSB) B (MSB) R/W 17h Fan 2 0100 configuration 0001 3 R 20h 1111 1111 Fan 1 tachometer count MSB — — — — — — LSB R 21h 1111 1111 Fan 2 tachometer count MSB — — — — — — LSB R/W 22h 1111 1111 MSB — — — — — — LSB R/W 23h 1111 1111 MSB — — — — — — LSB R/W 24h 0100 0000 R/W 25h 0100 0000 R 26h 0000 Fan 1 current 0000 duty cycle 12 Fan 1 start tach count/ target tach count Fan 2 max tach count/ target tach count Pulses per revolution/ fan 1 minimum tach count Pulses per revolution/ fan 2 minimum tach count Spin-up disable Pulse Fan PWM THERM to full-speed stretching Reserved Reserved Reserved frequency (MSB) disable enable Fan PWM frequency (LSB) Pulse per Pulse per Fan 1 min Fan 1 min Fan 1 min Fan 1 min Fan 1 min revolution revolution tach count tach tach tach tach (MSB) (LSB) count count count count (MSB) Fan 1 min tach count (LSB) Pulse per Pulse per Fan 2 min Fan 2 min Fan 2 min Fan 2 min Fan 2 min tach tach tach tach revolution revolution tach count (MSB) (MSB) (LSB) count count count count Fan 2 min tach count (LSB) MSB — — — — — ______________________________________________________________________________________ — LSB 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller READ/ WRITE REGISTER POR NO. FUNCTION STATE ADDRESS D7 D6 D5 D4 D3 D2 D1 D0 W 26h 0011 1100 Fan 1 target duty cycle MSB — — — — — — LSB R 27h 0000 0000 Fan 2 current duty cycle MSB — — — — — — LSB W 27h 0011 1100 Fan 2 target duty cycle MSB — — — — — — LSB 28h 0100 000 Channel 1 minimum fan-start temperature MSB — — — — — — LSB R/W 29h 0100 0000 Channel 2 minimum fan-start temperature MSB — — — — — — LSB R 3Dh 0101 1000 Read device ID 0 1 0 1 1 0 0 0 R 3Eh 0100 1101 Read manufacturer ID 0 1 0 0 1 1 0 1 R 3Fh 0000 0000 Read device revision 0 0 0 0 0 0 0 0 R/W the MAX6639 into low-power sleep mode. • D6: Software POR. Writing a 1 resets all registers to their default values. • D5: SMBus Timeout Disable. Writing a zero enables SMBus timeout for prevention of bus lockup. When the timeout function is enabled, the SMBus interface is reset if SDA or SCL remains low for more than 74ms (typ). Channel 1 and Channel 2 ALERT, OT, and THERM Limits (08h Through 0Dh) These registers contain the temperatures above which the ALERT, THERM, and OT status bits set and outputs assert (for the temperature channels that are not masked). The data format is the same as that of the channel 1 and channel 2 temperature registers: the LSB weight is +1°C and the MSB is +128°C. • D4: Temperature Channel 2 Source. Selects either local or remote 2 as the source for temperature channel 2 register data. Writing a zero to this bit selects remote 2 for temperature channel 2. • D3: PWM Output Frequency Range. Selects either the 20Hz to 100Hz range or the 5kHz to 25kHz range for the PWM outputs (see Table 9). Extended Temperature Registers (05h and 06h) These registers contain the extended temperature data from channels 1 and 2. Bits D[7:5] contain the 3 LSBs of the temperature data. The bit values are 0.5°C, 0.25°C, and 0.125°C. When bit 0 is set to 1, a diode fault has been detected. ______________________________________________________________________________________ 13 MAX6639 Table 4. Register Map (continued) MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Table 5. Fan Duty-Cycle Rate-of-Change REGISTER 10h OR 14h D[6:4] NOMINAL RATE OF CHANGE (s) ACTUAL RATE OF CHANGE AT SPECIFIC PWM FREQUENCIES 100Hz (s) 50Hz (s) 33.3Hz (s) 20Hz (s) NOMINAL TIME FROM 33% TO 100% (s) 0 000 0 0 0 0 0 001 0.0625 0.06 0.06 0.06 0.05 5 010 0.125 0.13 0.12 0.12 0.15 10 011 0.25 0.25 0.26 0.24 0.25 20 100 0.5 0.5 0.5 0.51 0.5 40 101 1 1 1 0.99 1 80 110 2 2 2 1.98 2 160 111 4 4 4 3.96 4 320 Fan 1 and 2 Configuration 1 (10h and 14h) The following registers control the modes of operation of the MAX6639: • D7: PWM Mode. D7 = 1 sets the fan into manual PWM duty-cycle control mode. Write the target duty cycle in the fan duty-cycle register. D7 = 0 puts the fan into RPM control mode. To set RPM manually, set both fan-control temperature channels (bits D2 and D3) to zero and write the desired tachometer count into the TACH count register. changes can be traded for response time. Table 5 shows the effect of D[6:4] and, for reference, the time required for the fan speed to change from 33% to 100% duty cycle as a function of the rate-ofchange bits. • D[3:2]: Temperature Channel(s) for Fan Control. Selects the temperature channel(s) that control the PWM output when the MAX6639 is in automatic RPM control mode (PWM mode bit is zero). If two channels are selected, the fan goes to the higher of the two possible speeds. If neither channel is selected, then the fan is in manual RPM mode and the speed is forced to the value written to the target tach count register 22h or 23h. • D[6:4]: Fan Duty-Cycle Rate-of-Change. D[6:4] sets the time between increments of the duty cycle. Each increment is 1/120 of the duty cycle. By adjusting the rate-of-change, audibility of fan-speed • D[1:0]: RPM Range. Scales the tachometer counter by setting the maximum (full-scale) value of the RPM range to 2000, 4000, 8000, or 16,000. (Table 3 shows the internal clock frequency as a function of the range.) Table 6. Fan RPM Speed REGISTER 10h OR 14h FAN MAXIMUM RPM VALUE 00 2000 01 4000 10 8000 11 16,000 Table 7. RPM-to-Tachometer Count Relationship Examples MAXIMUM RPM VALUE ACTUAL RPM SELECTED NUMBER OF PULSES PER REVOLUTION ACTUAL FAN PULSES PER REVOLUTION TACHOMETER COUNT VALUE* 2000 1000 2 2 3Ch 4000 1000 2 2 78h 4000 3000 2 2 28h 4000 3000 2 4 14h 16,000 8000 4 4 3Ch 16,000 8000 4 2 78h *Tachometer count value = ((internal clock frequency) x 60) / actual RPM) (selected number of pulses per revolution / actual fan pulses) 14 ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller REGISTER 11h OR 15h FAN CONTROL TEMPERATURE STEP SIZE (°C) 00 1 01 2 Table 9. Fan PWM Frequency REGISTERS 13h AND 16h LOW-FREQUENCY (Hz) REGISTER 04h D3 = 0 HIGH-FREQUENCY (kHz) REGISTER 04h D3 = 1 00 20 5 33.33 8.33 10 4 01 11 8 10 50 12.5 11 100 25 Fan 1 and 2 Configuration 2a (11h and 15h) The following registers apply to the automatic RPM control mode: • D[7:4]: Fan RPM (Tachometer) Step-Size A. Selects the number of tachometer counts the target value decreases for each temperature step increase above the fan-start temperature. Value = n + 1 (1 through 16) where n is the value of D[7:4]. • D[3:2]: Temperature Step Size. Selects the temperature increment for fan control. For each temperature step increase, the target tachometer count decreases by the value selected by D[7:4] (Table 8). • D1: PWM Output Polarity. PWM output is low at 100% duty cycle when this bit is set to zero. PWM output is high at 100% duty cycle when this bit is set to 1. • D0: Minimum Speed. Selects the value of the minimum fan speed (when temperature is below the fanstart temperature in the automatic RPM control mode). Set to zero for 0% fan drive. Set to 1 to determine the minimum fan speed by the tachometer count value in registers 22h and 23h (fan maximum TACH). Fan 1 and 2 Configuration 2b (12h and 16h) The following registers select the tachometer step sizes and number of steps for step-size A to step-size B slope changes (see Figure 1): • D[7:4]: RPM (Tachometer) Step Size B. Selects number of tachometer counts the target value decreases for each temperature step increase after the number of steps selected by D[3:0]. Value = n + 1 (1 through 16) where n is the value of D[7:4]. • D[3:0]: Selects the number of temperature/tachometer steps above the fan-start temperature at which step-size B begins. Fan 1 and Fan 2 Configuration 3 (13h and 17h) The following registers control fan spin-up, PWM output frequency, pulse stretching, and THERM to fan fullspeed enable: • D7: Fan Spin-Up Disable. Set to zero to enable fan spin-up. Whenever the fan starts up from zero drive, it is driven with 100% duty cycle for 2s to ensure that it starts. Set to 1 to disable the spin-up function. • D6: THERM to Full-Speed Enable. When this bit is 1, THERM going low (either by being pulled low externally or by the measured temperature exceeding the THERM limit) forces the fan to full speed. In all modes, this happens at the rate determined by the rate-of-change selection. When THERM is deasserted (even if the fan has not reached full speed), the speed falls at the selected rate-ofchange to the target speed. • D5: Disable Pulse Stretching. Pulse stretching is enabled when this bit is set to zero. When modulating the fan’s power supply with the PWM signal, the PWM pulses are periodically stretched to keep the tachometer signal available for one full revolution. Setting this bit to 1 disables pulse stretching. The MAX6639 still measures the fan speed but does not stretch the pulses for measurements, so the fan’s power supply must not be pulse modulated. • D[1:0]: PWM Output Frequency. These bits control the PWM output frequency as shown in Table 9. Fan Tach Count 1 and 2 (20h and 21h) These registers have the latest tachometer measurement of the corresponding channel. This is inversely proportional to the fan’s speed. The fan RPM range should be set so this count falls in the 30 to 160 range for normal fan operation. Fan Start Tach Count/Target Tach Count (22h and 23h) D[7:0]: This sets the starting tachometer count for the fan in automatic RPM mode. Depending on the setting of the minimum duty-cycle bit, the tachometer count has this value either at all temperatures below the fanstart temperature or the count is zero below the fanstart temperature and has this value when the fan-start temperature is reached. These registers are the target tach count when in manual RPM mode. ______________________________________________________________________________________ 15 MAX6639 Table 8. Temperature Step Size MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Table 10. Tachometer Pulses per Revolution REGISTERS 24h OR 25h D[7:6] TACHOMETER PULSES PER REVOLUTION 00 1 01 2 10 3 11 4 Fan 1 and 2 Pulses and Min RPM (24h and 25h) D[7:6]: This sets the number of tachometer pulses per revolution for the fan. When set properly, a 2000RPM fan with two pulses per revolution has the same tachometer count as a 2000RPM fan with four pulses per revolution. Table 10 lists tachometer pulses per revolution. D[5:0]: This sets the minimum allowable fan tachometer count (maximum speed). This limits the maximum speed of the fan to reduce noise at high temperatures. For reasonable speed resolution, the fan RPM range should be set so this value is between approximately 30 and 60. If a maximum RPM limit is unnecessary, this value can be set to the full-speed tachometer count. Fan 1 and 2 Duty Cycle (26h and 27h) These registers contain the present value of the PWM duty cycle. In PWM fan-control mode, the desired (target) value of the PWM duty cycle can be written directly into this register. Channel 1 and Channel 2 Fan-Start Temperature (28h and 29h) These registers contain the temperatures at which fan control begins (in automatic RPM mode). Applications Information Fan-Drive Circuits A variety of fan-drive circuit configurations can be used with the MAX6639 to control the fan’s speed. Four of the most common are shown in Figures 6 through 10. PWM Power-Supply Drive (High Side or Low Side) The simplest way to control the speed of a 3-wire (supply, ground, and tachometer output) fan is to modulate its power supply with a PWM signal. The PWM frequency is typically in the 20Hz to 40Hz range, with 33Hz being a common value. If the frequency is too high, the fan’s internal control circuitry does not have sufficient time to turn on during a power-supply pulse. If the frequency is too low, the power-supply modulation becomes more easily audible. The PWM can take place on the high side (Figure 6) or the low side (Figure 7) of the fan’s power supply. In either case, if the tachometer is used, it is usually necessary to periodically stretch a PWM pulse so there is enough time to count the tachometer pulse edges for speed measurement. The MAX6639 allows this pulse stretching to be enabled or disabled to match the needs of the application. Pulse stretching can sometimes be audible if the fan responds quickly to changes in the drive voltage. If the acoustic effects of pulse stretching are too noticeable, the circuit in Figure 8 can be used to eliminate pulse VCC VCC VFAN (5V OR 12V) VFAN (5V OR 12V) 3V TO 5.5V 4.7kΩ 4.7kΩ TACH1 PWM1 TACH OUTPUT 3V TO 5.5V 3V TO 5.5V 4.7kΩ TACH1 TACH OUTPUT Figure 6. High-Side PWM Drive Circuit 16 4.7kΩ PWM1 Figure 7. Low-Side Drive Circuit ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller MAX6639 VCC VCC VFAN (12V OR 5V) 3V TO 5.5V 4.7kΩ 4.7kΩ PWM1 PWM1 3V TO 5.5V 3V TO 5.5V VFAN (5V OR 12V) 5V 4.7kΩ 4.7kΩ TACH1 TACH1 TACH OUTPUT TACH OUTPUT Figure 8. High-Side PWM Drive with “Keep-Alive” Supply Linear Fan Supply Drive VFAN (5V OR 12V) VCC 100kΩ 3.3V 4.7kΩ 2N3904 100kΩ PWM1 33kΩ 3V TO 5V 2.2μF 91kΩ 4.7kΩ TACH1 TACH OUTPUT Figure 10. 4-Wire Fan with PWM Speed-Control Input 10μF TACH OUTPUT Figure 9. High-Side Linear Drive Circuit stretching while still allowing accurate tachometer feedback. The diode connects the fan to a low-voltage power supply, which keeps the fan’s internal circuitry powered even when the PWM drive is zero. Therefore, the tachometer signal is always available and pulse stretching can be turned off. Note that this approach prevents the fan from turning completely off, so even when the duty cycle is 0%, the fan may still spin. While many fans are compatible with PWM power-supply drive, some are excessively noisy with this approach. When this is the case, a good alternative is to control the fan’s power-supply voltage with a variable DC powersupply circuit. The circuit in Figure 10 accepts the PWM signal as an input, filters the PWM, and converts it to a DC voltage that then drives the fan. To minimize the size of the filter capacitor, use the highest available PWM frequency. Pulse stretching is not necessary when using a linear fan supply. Note that this approach is not as efficient as PWM drive, as the fan’s power-supply current flows through the MOSFET, which can have an appreciable voltage across it. The total power is still less than that of a fan running at full speed. Table 11 is a summary of fan-drive options. 4-Wire Fans Some fans have an additional, fourth terminal that accepts a logic-level PWM speed-control signal as shown in Figure 10. These fans require no external power circuitry and combine the low noise of linear drive with the high efficiency of PWM power-supply drive. Higher PWM frequencies are recommended when using 4-wire fans. ______________________________________________________________________________________ 17 MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Table 11. Summary of Fan-Drive Options FIGURE PULSE STRETCHING PWM FREQUENCY PWM POLARITY High-side PWM drive Yes Low Negative 7 Low-side PWM drive Yes Low Positive 8 High-side PWM drive with keep-alive supply No Low Negative 9 High-side linear supply No High Positive 10 4-wire fan with PWM speed-control input No High Positive 6 DESCRIPTION 2) Write 4Bh to register 22h to set the minimum RPM to 3200. sense transistor with a different ideality factor is used, the output data is different. Fortunately, the difference is predictable. Assume a remote-diode sensor designed for a nominal ideality factor nNOMINAL is used to measure the temperature of a diode with a different ideality factor, n1. The measured temperature TM can be corrected using: 3) Write 5Eh to register 24h to set the pulses per revolution to 2 and to set the maximum RPM speed to 8000RPM. ⎛ ⎞ n1 TM = TACTUAL ⎜ ⎟ ⎝ nNOMINAL ⎠ 4) Write 19h to register 28h to set the fan-start temperature to +25°C. where temperature is measured in Kelvin. Quick-Start Guide for 8000RPM 4-Pole (2 Pulses per Revolution) Fan in Automatic RPM Mode Using the Circuit of Figure 7 1) Write 02h to register 11h to set the PWM output to drive the n-channel MOSFET. 5) Write D2h to register 10h to start automatic RPM mode. Remote-Diode Considerations Temperature accuracy depends upon having a goodquality, diode-connected, small-signal transistor. Accuracy has been experimentally verified for all the devices listed in Table 12. The MAX6639 can also directly measure the die temperature of CPUs and other ICs with on-board temperature-sensing diodes. The transistor must be a small-signal type with a relatively high forward voltage. This ensures that the input voltage is within the A/D input voltage range. The forward voltage must be greater than 0.25V at 10µA at the highest expected temperature. The forward voltage must be less than 0.95V at 100µA at the lowest expected temperature. The base resistance has to be less than 100Ω. Tight specification of forward-current gain (+50 to +150, for example) indicates that the manufacturer has good process control and that the devices have consistent characteristics. Effect of Ideality Factor The accuracy of the remote temperature measurements depends on the ideality factor (n) of the remote diode (actually a transistor). The MAX6639 is optimized for n = 1.008, which is the typical value for the Intel ® Pentium ® III and the AMD Athlon MP model 6. If a As mentioned above, the nominal ideality factor of the MAX6639 is 1.008. As an example, assume the MAX6639 is configured with a CPU that has an ideality factor of 1.002. If the diode has no series resistance, the measured data is related to the real temperature as follows: ⎛n ⎞ ⎛ 1.008 ⎞ TACTUAL = TM ⎜ NOMINAL ⎟ = TM ⎜ ⎟ = TM (1.00599) n1 ⎝ 1.002 ⎠ ⎝ ⎠ For a real temperature of +85°C (358.15K), the measured temperature is +82.91°C (356.02K), which is an error of -2.13°C. Table 12. Remote-Sensor Transistor Manufacturers MANUFACTURER Central Semiconductor (USA) Rohm Semiconductor (USA) CMPT3906 SST3906 Samsung (Korea) KST3906-TF Siemens (Germany) SMBT3906 Intel and Pentium are registered trademarks of Intel Corp. 18 MODEL NO. ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Since 1°C corresponds to 198.6µV, series resistance contributes a temperature offset of: μV 90 °C Ω = 0.453 Ω μV 198.6 °C Assume that the diode being measured has a series resistance of 3Ω. The series resistance contributes an offset of: 3Ω × 0.453 °C Ω = 1.36°C The effects of the ideality factor and series resistance are additive. If the diode has an ideality factor of 1.002 and series resistance of 3Ω, the total offset can be calculated by adding error due to series resistance with error due to ideality factor: 1.36°C - 2.13°C = -0.77°C for a diode temperature of +85°C. In this example, the effect of the series resistance and the ideality factor partially cancel each other. For best accuracy, the discrete transistor should be a small-signal device with its collector connected to GND and base connected to DXN. Table 12 lists examples of discrete transistors that are appropriate for use with the MAX6639. The transistor must be a small-signal type with a relatively high forward voltage; otherwise, the ADC input voltage range can be violated. The forward voltage at the highest expected temperature must be greater than 0.25V at 10µA, and at the lowest expected temperature, the forward voltage must be less than 0.95V at 100µA. Large-power transistors must not be used. Also, ensure that the base resistance is less than 100Ω. Tight specifications for forward current gain (50 < fl < 150, for example) indicate that the manufacturer has good process controls and that the devices have consistent VBE characteristics. ADC Noise Filtering The integrating ADC has inherently good noise rejection, especially of low-frequency signals such as 60Hz/120Hz power-supply hum. Micropower operation places constraints on high-frequency noise rejection. Lay out the printed-circuit board (PCB) carefully with proper external noise filtering for high-accuracy remote measurements in electrically noisy environments. Filter high-frequency electromagnetic interference (EMI) at DXP and DXN with an external 2200pF capacitor connected between the two inputs. This capacitor can be increased to approximately 3300pF (max), including cable capacitance. A capacitance higher than 3300pF introduces errors due to the rise time of the switched-current source. Twisted Pairs and Shielded Cables For remote-sensor distances longer than 8in, or in particularly noisy environments, a twisted pair is recommended. Its practical length is 6ft to 12ft (typ) before noise becomes a problem, as tested in a noisy electronics laboratory. For longer distances, the best solution is a shielded twisted pair like that used for audio microphones. For example, Belden #8451 works well for distances up to 100ft in a noisy environment. Connect the twisted pair to DXP and DXN and the shield to ground, and leave the shield’s remote end unterminated. Excess capacitance at DXN or DXP limits practical remote-sensor distances (see the Typical Operating Characteristics). For very long cable runs, the cable’s parasitic capacitance often provides noise filtering, so the recommended 2200pF capacitor can often be removed or reduced in value. Cable resistance also affects remote-sensor accuracy. A 1Ω series resistance introduces about +1/2°C error. PCB Layout Checklist 1) Place the MAX6639 as close as practical to the remote diode. In a noisy environment, such as a computer motherboard, this distance can be 4in to 8in, or more, as long as the worst noise sources (such as CRTs, clock generators, memory buses, and ISA/PCI buses) are avoided. 2) Do not route the DXP/DXN lines next to the deflection coils of a CRT. Also, do not route the traces across a fast memory bus, which can easily introduce +30°C error, even with good filtering. Otherwise, most noise sources are fairly benign. 3) Route the DXP and DXN traces parallel and close to each other, away from any high-voltage traces such as +12VDC. Avoid leakage currents from PCB contamination. A 20MΩ leakage path from DXP ground causes approximately +1°C error. 4) Connect guard traces to GND on either side of the DXP/DXN traces. With guard traces, placing routing near high-voltage traces is no longer an issue. ______________________________________________________________________________________ 19 MAX6639 Effect of Series Resistance Series resistance in a sense diode contributes additional errors. For nominal diode currents of 10µA and 100µA, change in the measured voltage is: ΔVM = RS (100µA - 10µA) = 90µA x RS MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Typical Operating Circuit 5V VFAN (5V OR 12V) 3.0V TO 3.6V 5V CPU DXP1 VCC ADD DXN VFAN (5V OR 12V) TACH1 PWM1 5V DXP2 PWM2 3.3V TO 5.5V MAX6639 GPU TO SMBus MASTER SDA SCL TACH2 3.3V TO 5.5V 3.3V TO 5.5V ALERT TO CLOCK THROTTLE TO SYSTEM SHUTDOWN OT 3.3V TO 5.5V 3.3V TO 5.5V THERM FANFAIL GND 5) Route as few vias and crossunders as possible to minimize copper/solder thermocouple effects. 6) When introducing a thermocouple, make sure that both the DXP and the DXN paths have matching thermocouples. In general, PCB-induced thermocouples are not a serious problem. A copper solder thermocouple exhibits 3µV/°C, and it takes approximately 200µV of voltage error at DXP/DXN to cause a +1°C measurement error, so most parasitic thermocouple errors are swamped out. 8) Placing an electrically clean copper ground plane between the DXP/DXN traces and traces carrying high-frequency noise signals helps reduce EMI. Chip Information TRANSISTOR COUNT: 39,283 PROCESS: BiCMOS 7) Use wide traces. Narrow traces are more inductive and tend to pick up radiated noise. The 10-mil widths and spacings recommended are not absolutely necessary (as they offer only a minor improvement in leakage and noise), but use them where practical. 20 ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller QFN THIN.EPS ______________________________________________________________________________________ 21 MAX6639 Package Information (The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information, go to www.maxim-ic.com/packages.) MAX6640 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Package Information (continued) (The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information, go to www.maxim-ic.com/packages.) 22 ______________________________________________________________________________________ 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller QSOP.EPS ______________________________________________________________________________________ 23 MAX6640 Package Information (continued) (The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information, go to www.maxim-ic.com/packages.) MAX6639 2-Channel Temperature Monitor with Dual, Automatic, PWM Fan-Speed Controller Revision History REVISION NUMBER REVISION DATE 0 5/05 Initial release 12/07 Changed max operating voltage range from 5.5V to 3.6V; corrected TOCs 1, 2, and 11; various style edits; and updated package outlines. 1 DESCRIPTION PAGES CHANGED — 1–5, 7, 19, 20, 21, 22 Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are implied. Maxim reserves the right to change the circuitry and specifications without notice at any time. 24 ____________________Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 © 2007 Maxim Integrated Products is a registered trademark of Maxim Integrated Products, Inc.