19-1836; Rev 2; 1/02 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface The is a precise digital thermometer that reports the temperature of both a remote P-N junction and its own die. The remote junction can be a diode-connected transistor—typically a low-cost, easily mounted 2N3904 NPN type or 2N3906 PNP type—that replaces conventional thermistors or thermocouples. Remote accuracy is ±1°C for multiple transistor manufacturers, with no calibration needed. The remote junction can also be a common-collector PNP, such as a substrate PNP of a microprocessor (µP). The 2-wire serial interface accepts standard System Management Bus (SMBus)TM, Write Byte, Read Byte, Send Byte, and Receive Byte commands to program the alarm thresholds and to read temperature data. Measurements can be done automatically and autonomously, with the conversion rate programmed by the user, or programmed to operate in a single-shot mode. The adjustable conversion rate allows the user to optimize supply current and temperature update rate to match system needs. When the conversion rate is faster than 1Hz, the conversion results are available as a 7-bitplus-sign byte with a 1°C LSB. When the conversion rate is 1Hz or slower, the MAX6654 enters the extended mode. In this mode, 3 additional bits of temperature data are available in the extended resolution register, providing 10-bit-plus-sign resolution with a 0.125°C LSB. Single-shot conversions also have 0.125°C per LSB resolution when the conversion rate is 1Hz or slower. A parasitic resistance cancellation (PRC) mode can also be invoked for conversion rates of 1Hz or slower by setting bit 4 of the configuration register to 1. In PRC mode, the effect of series resistance on the leads of the external diode is canceled. The 11-bit conversion in PRC mode is performed in <500ms and is disabled for conversion rates faster than 1Hz. The one-shot conversion is also 11 bits in <500ms. The MAX6654 default low-temperature measurement limit is 0°C. This can be extended to -64°C by setting bit 5 of the configuration register to 1. The MAX6654 is available in a small, 16-pin QSOP surface-mount package. ________________________Applications Desktop Computers Notebook Computers Servers Thin Clients Workstations Test and Measurement Multichip Modules SMBus is a trademark of Intel Corp. I2C is a trademark of Philips Corp. †Patents pending Features ♦ High Accuracy ±1°C (max) from +70°C to +100°C (Remote) ♦ 11-Bit, 0.125°C Resolution ♦ Dual Channel: Measures Remote and Local Temperature ♦ No Calibration Required ♦ Programmable Under/Overtemperature Alarms ♦ I2C™-Compatible/SMBus Interface ♦ +3V to +5.5V Supply Range Ordering Information PART TEMP. RANGE PIN-PACKAGE MAX6654MEE -55°C to +125°C 16 QSOP Typical Operating Circuit 0.1µF 200Ω +3V TO +5V SUPPLY 10k EACH VCC STBY CPU DXP MAX6654 SMBCLK CLOCK SMBDATA DATA 2200pF ALERT DXN ADD0 ADD1 INTERRUPT TO µC GND Pin Configuration TOP VIEW N.C. 1 16 N.C. VCC 2 15 STBY DXP 3 14 SMBCLK DXN 4 MAX6654 N.C. 5 13 N.C. 12 SMBDATA ADD1 6 11 ALERT GND 7 10 ADD0 GND 8 9 N.C. QSOP ________________________________________________________________ Maxim Integrated Products 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. 1 MAX6654 General Description MAX6654† MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface ABSOLUTE MAXIMUM RATINGS (All voltages are referenced to GND unless otherwise noted.) VCC ..........................................................................-0.3V to +6V DXP, ADD_ ................................................-0.3V to (VCC + 0.3V) DXN ......................................................................-0.3V to +0.8V SMBCLK, SMBDATA, ALERT, STBY.. ......................-0.3V to +6V SMBDATA, ALERT Current .................................-1mA to +50mA DXN Current ......................................................................±1mA ESD Protection (all pins, Human Body Model). .................2000V Continuous Power Dissipation (TA = +70°C) 16-Pin QSOP (derate 8.30mW/°C above +70°C).........667mW Operating Temperature Range ........................-55°C to +125°C Junction Temperature. .....................................................+150°C Storage Temperature Range ............................-65°C to +165°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 = +3V to +5.5V, TA = -55°C to +125°C, unless otherwise noted. Typical values are at VCC = +3.3V and TA = +25°C.) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS TEMPERATURE-TO-DIGITAL CONVERTER +60°C ≤ TA ≤ +100°C, VCC = +3.3V Accuracy (Local Sensor) Accuracy (Remote Sensor) -1.3 -2 +2 -55°C ≤ TA ≤ +120°C, VCC = +3.3V -5 +5 +70°C ≤ TRJ ≤ +100°C, VCC = +3.3V (Note 1) -1 +1 0°C ≤ TRJ ≤ +100°C, VCC = +3.3V (Note 1) -2 +2 -55°C ≤ TRJ ≤ +120°C, VCC = +3.3V (Notes 1, 2) -5 +5 Line Regulation 0.2 Resolution (Legacy Mode) Conversion rate >1Hz Resolution (Extended Mode) Conversion rate ≤1Hz Undervoltage Lockout Threshold VCC input, disables A/D conversion, rising edge UVLO +8 VCC +2.80 +3.0 VCC, falling edge +1.5 SMBus static Operating Current +2.0 tCONV IRJ V mV +2.5 V V mV +10 µA mA +0.55 +1 0.25 conversion/s (Note 3) +40 +70 2 conversion/s (Note 3) +150 +250 +125 +156 ms ±25 % From stop bit to conversion completed, in legacy mode (Note 3) +95 Conversion Timing Error 2 +2.95 +5.5 +3 During conversion Average Operating Current Remote Diode Current Bits +90 Standby Current °C °C +11 POR Threshold Hysteresis °C Bits +0.125 +2.60 °C °C +90 Power-On Reset (POR) Threshold Conversion Time 0.5 +1 Undervoltage Lockout Hysteresis Supply Voltage Range +1.3 0°C ≤ TA ≤ +100°C, VCC = +3.3V High level +80 +100 +120 Low level +8 +10 +12 _______________________________________________________________________________________ µA µA 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface (VCC = +3V to +5.5V, TA = -55°C to +125°C, unless otherwise noted. Typical values are at VCC = +3.3V and TA = +25°C.) PARAMETER SYMBOL Logic Input Low Voltage VIL Logic Input High Voltage VIH Input Leakage Current ILEAK Output Low Sink Current IOL Input Capacitance Cin Output High Leakage Current CONDITIONS MIN fSCL Bus Free Time Between STOP and START Conditions tBUF MAX +0.8 VCC = +3.0V +2.2 VCC = +5.5V +2.6 VOL = +0.6V +6 VOL = +0.4V +1 START Condition Setup Time 0 V µA mA +5 (Note 4) UNITS V ±2 VIN = GND or VCC VOH = +5.5V Serial Clock Frequency TYP VCC = +3.0V to +5.5V pF +1 µA +100 kHz +4.7 µs +4.7 µs Repeat START Condition Setup Time tSU:STA 90% to 90% +50 µs START Condition Hold Time tHD:STA 10% of SMBDATA to 90% of SMBCLK +4 µs STOP Condition Setup Time tSU:STO 90% of SMBCLK to 10% of SMBDATA662 +4 µs +4.7 µs Clock Low Period Clock High Period tLOW 10% to 10% tHIGH 90% to 90% Data Setup Time tSU: DAT 90% of SMBDATA to 10% of SMBCLK Data Hold Time tHD: DAT (Note 5) +4 µs +250 ns 0 µs Receive SCL/SDA Rise Time tR +1 µs Receive SCL/SDA Fall Time tF +300 ns +40 ms SMBus Timeout tTIMEOUT SMBDATA and SMBCLK time low for reset of serial interface +25 Note 1: +25°C ≤ TA ≤ +85°C. Note 2: If both the MAX6654 and the remote junction are below TA = -20°C, then VCC > 3.15V. Note 3: The conversion time doubles for the extended resolution mode. This causes the average operating current to approximately double. Note 4: The serial interface resets when SMBCLK is low for more than tTIMEOUT. Note 5: Note that a transition must internally provide at least a hold time to bridge the undefined region (300ns max) of SMBCLK’s falling edge. _______________________________________________________________________________________ 3 MAX6654 ELECTRICAL CHARACTERISTICS (continued) Typical Operating Characteristics (VCC = +3.3V to +5.5V, TA = +25°C, unless otherwise noted.) 0 -1 -2 -50 -30 -10 10 30 50 70 90 110 130 150 12 VIN = 500mVp-p REMOTE 8 4 0 100 10k 1M 100M 1k 100k FREQUENCY (Hz) STANDBY SUPPLY CURRENT vs. SUPPLY VOLTAGE 6 5 4 3 2 1 MAX6654 toc05 100 STANDBY SUPPLY CURRENT (µA) MAX6654 toc04 VCC = +5V 7 TEMPERATURE ERROR (°C) 1 FREQUENCY (Hz) TEMPERATURE ERROR vs. DXP-DXN CAPACITANCE 90 80 70 60 50 40 0 0 10 20 30 40 50 60 70 80 90 100 DXP-DXN CAPACITANCE (nF) 4 2 0 1 TEMPERATURE (°C) 8 MAX6654 toc03 VIN = 500mVp-p LOCAL TEMPERATURE ERROR (°C) 1 3 MAX6654 toc02 16 TEMPERATURE ERROR (°C) FAIRCHILD 2N3904 MAX6654 toc01 2 TEMPERATURE ERROR vs. COMMON-MODE NOISE FREQUENCY TEMPERATURE ERROR vs. POWER-SUPPLY NOISE FREQUENCY TEMPERATURE ERROR vs. REMOTE-DIODE TEMPERATURE TEMPERATURE ERROR (°C) MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface 3.0 3.2 3.4 3.6 3.8 4.0 4.2 4.4 4.6 4.8 5.0 SUPPLY VOLTAGE (V) _______________________________________________________________________________________ 10M 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface PIN NAME FUNCTION 1, 5, 9, 13, 16 N.C. No Connection. Not internally connected. May be used for PC board trace routing. 2 VCC Supply Voltage Input. +3.0V to +5.5V. Bypass to GND with a 0.1µF capacitor. A 200Ω series resistor is recommended but not required for additional noise filtering. 3 DXP Combined Current Source and ADC Positive Input for Remote-Junction Channel. If a remotesensing junction is not used, connect DXP to DXN. 4 DXN Combined Current Sink and ADC Negative Input. DXN is internally biased to a diode voltage above ground. 6 ADD1 SMBus Slave Address Select Input. ADD0 and ADD1 are sampled upon power-up. 7, 8 GND Ground 10 ADD0 SMBus Slave Address Select Input. ADD0 and ADD1 are sampled upon power-up. 11 ALERT SMBus Alert (Interrupt) Output. Open drain. 12 SMBDATA 14 SMBCLK 15 STBY SMBus Serial-Data Input/Output. Open drain. SMBus Serial-Clock Input Hardware standby input. Temperature and comparison threshold data are retained in standby mode. Low = standby mode, high = operating mode. _______________________________________________________________________________________ 5 MAX6654 Pin Description MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface Detailed Description The MAX6654 is a temperature sensor that communicates through an SMBus/I2C-compatible interface with a µP in thermal-management applications. Essentially an 11-bit serial analog-to-digital converter (ADC) with a sophisticated front end, the MAX6654 measures the change in diode voltage at different current levels to calculate temperature. It contains a current source, a multiplexer, an ADC, an SMBus interface, and associated control logic (Figure 1). Temperature data from the ADC is loaded into data registers, where it is automatically compared with data previously stored in four over/undertemperature alarm registers. ADC and Multiplexer The ADC is an averaging type that integrates over a 60ms period (each channel, typically, in the 8-bit “legacy” mode), with excellent noise rejection. The multiplexer automatically steers bias currents through the remote and local diodes. The ADC and associated circuitry measure their forward voltages and compute their temperatures. Both channels are automatically converted once the conversion process has started, either in free-running or single-shot mode. If one of the two channels is not used, the device still performs both measurements, and the user can ignore the results of the unused channel. If the remote-diode channel is unused, connect DXP to DXN rather than leave the pins open. The DXN input is biased at 1VBE above ground by an internal diode to set up the ADC inputs for a differential measurement. The worst-case DXP-DXN differential input voltage range is 0.28V to 0.9V. Excess resistance in series with the remote diode causes about +1/2°C error per ohm when the parasitic resistance cancellation mode is not being used. When the parasitic resistance cancellation mode is being used, excess resistance of up to 100Ω will not cause any discernable error. A 200µV offset voltage forced on DXPDXN causes about 1°C error. A/D Conversion Sequence A conversion sequence consists of a local temperature measurement and a remote temperature measurement. Each time a conversion begins, whether initiated automatically in the free-running autoconvert mode (RUN/STOP = 0) or by writing a “One-Shot” command, both channels are converted, and the results of both measurements are available after the end of conversion. A BUSY status bit in the status byte shows that the device is actually performing a new conversion; however, even if the ADC is busy, the results of the previous conversion are always available. 6 Table 1. Remote-Sensor Transistor Manufacturers MANUFACTURER MODEL NUMBER Central Semiconductor (USA) CMPT3904 Fairchild Semiconductor (USA) 2N3904, 2N3906 ON Semiconductor (USA) 2N3904, 2N3906 Rohm Semiconductor (USA) SST3904 Samsung (Korea) KST3904-TF Siemens (Germany) SMBT3904 Zetex (England) FMMT3904CT-ND Note: Transistors must be diode connected (base shorted to collector). Remote-Diode Selection The MAX6654 can directly measure the die temperature of CPUs and other ICs having on-board temperature-sensing diodes as shown in the Typical Operating Circuit, or it can measure the temperature of a discrete diode-connected transistor. For best accuracy, the discrete transistor should be a small-signal device with its collector and base connected together. Accuracy has been experimentally verified for all of the devices listed in Table 1. The transistor must be a small-signal type with a relatively high forward voltage; otherwise, the A/D input voltage range can be violated. The forward voltage must be >0.28V at 10µA; check to ensure this is true at the highest expected temperature. The forward voltage must be <0.9V at 100µA; check to ensure this is true at the lowest expected temperature. Large power transistors don’t work at all. Also, ensure that the base resistance is <100Ω. Tight specifications for forward-current gain (+50 to +150, for example) indicate that the manufacturer has good process controls and that the devices have consistent VBE characteristics. For heat-sink mounting, the 500-32BT02-000 thermal sensor from Fenwal Electronics is a good choice. This device consists of a diode-connected transistor, an aluminum plate with screw hole, and twisted-pair cable (Fenwal Inc., Milford, MA, 508-478-6000). Thermal Mass and Self-Heating Thermal mass can significantly affect the time required for a temperature sensor to respond to a sudden change in temperature. The thermal time constant of the 16-pin QSOP package is about 140s in still air. For the junction temperature of a MAX6654 in still air to settle to within +1°C after a sudden +100°C change in air temperature, about five time constants or 12 minutes are required. However, the MAX6654 is not intended to _______________________________________________________________________________________ ALERT GND DXN DXP REMOTE TEMPERATURE DATA REGISTER DIODE FAULT LOCAL REMOTE - + Q R S DIGITAL COMPARATOR (REMOTE) 8 LOW-TEMPERATURE THRESHOLD (REMOTE TLOW) 8 HIGH-TEMPERATURE THRESHOLD (REMOTE THIGH) 8 - - + MUX ADC 8 CONTROL LOGIC SELECTED VIA SLAVE ADD = 0001 100 DIGITAL COMPARATOR (LOCAL) 8 LOW-TEMPERATURE THRESHOLD (LOCAL TLOW) HIGH-TEMPERATURE THRESHOLD 8 (LOCAL THIGH) LOCAL TEMPERATURE DATA REGISTER MAX6654 2 8 READ ALERT RESPONSE ADDRESS REGISTER CONVERSION RATE REGISTER CONFIGURATION BYTE REGISTER STATUS BYTE REGISTER 8 WRITE SMBus 7 ADD1 ADDRESS DECODER ADD0 COMMAND BYTE (INDEX) REGISTER STBY SMBCLK SMBDATA MAX6654 VCC 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface Figure 1. Functional Diagram _______________________________________________________________________________________ 7 MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface measure ambient temperature; when measuring local temperature, it senses the temperature of the PC board to which it is soldered. The leads provide a good thermal path between the PC board traces and the MAX6654’s die. Thermal conductivity between the MAX6654’s die and the ambient air is poor by comparison. Because the thermal mass of the PC board is far greater than that of the MAX6654, the device follows temperature changes on the PC board with little or no perceivable delay. When measuring temperature with discrete remote sensors, the use of smaller packages, such as SOT23s, yields the best thermal response times. Take care to account for thermal gradients between the heat source and the sensor, and ensure that stray air currents across the sensor package do not interfere with measurement accuracy. When measuring the temperature of a CPU or other IC with an on-chip sense junction, thermal mass has virtually no effect; the measured temperature of the junction tracks the actual temperature within a conversion cycle. Self-heating does not significantly affect measurement accuracy. Remote-sensor self-heating due to the diode current source is negligible. For the local diode, the worst-case error occurs when autoconverting at the fastest rate and simultaneously sinking maximum current at the ALERT output. For example, at an 8Hz rate and with ALERT sinking 1mA, the typical power dissipation is VCC x 450µA + 0.4V x 1mA. Package theta JA is about 150°C/Ω, so with VCC = 5V and no copper PC board heat sinking, the resulting temperature rise is: ∆T = 2.7mW x 150°C/W = 0.4°C Even with these contrived circumstances, it is difficult to introduce significant self-heating errors. ADC Noise Filtering The ADC is an integrating type with 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; therefore, careful PC board layout and proper external noise filtering are required for high-accuracy remote measurements in electrically noisy environments. High-frequency EMI is best filtered at DXP and DXN with an external 2200pF capacitor. This value can be increased to about 3300pF (max), including cable capacitance. Capacitance >3300pF introduces errors due to the rise time of the switched current source. Nearly all noise sources tested cause the ADC measurements to be higher than the actual temperature, typically by +1°C to +10°C, depending on the frequency and amplitude (see Typical Operating Characteristics). 8 GND 10MILS 10MILS DXP MINIMUM 10MILS DXN 10MILS GND Figure 2. Recommended DXP/DXN PC Traces PC Board Layout 1) Place the MAX6654 as close as practical to the remote diode. In a noisy environment, such as a computer motherboard, this distance can be 4 inches to 8 inches (typ) 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 in parallel and in close proximity to each other, away from any highvoltage traces, such as +12VDC. Leakage currents from PC board contamination must be dealt with carefully since a 20MΩ leakage path from DXP to ground causes about +1°C error. 4) Connect guard traces to GND on either side of the DXP-DXN traces (Figure 2). With guard traces in place, routing near high-voltage traces is no longer an issue. 5) Route through 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, PC-board-induced thermocouples are not a serious problem. A coppersolder thermocouple exhibits 3µV/°C, and it takes about 200µV of voltage error at DXP-DXN to cause a +1°C measurement error. So, most parasitic thermocouple errors are swamped out. 7) Use wide traces. Narrow traces are more inductive and tend to pick up radiated noise. The 10mil widths and spacings recommended in Figure 2 aren’t absolutely necessary (as they offer only a _______________________________________________________________________________________ 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface PC Board Layout Checklist • • • Place the MAX6654 close to the remote-sense junction. Keep traces away from high voltages (+12V bus). Keep traces away from fast data buses and CRTs. • • Use recommended trace widths and spacings. Place a ground plane under the traces. • Use guard traces flanking DXP and DXN and connecting to GND. Place the noise filter and the 0.1µF VCC bypass capacitors close to the MAX6654. Add a 200Ω resistor in series with V CC for best noise filtering (see Typical Operating Circuit). • • Twisted-Pair 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 GND, and leave the shield’s remote end unterminated. Excess capacitance at DXN and DXP limits practical remote-sensor distances (see Typical Operating Characteristics). For very long cable runs, the cable’s parasitic capacitance often provides noise filtering, so the 2200pF capacitor can often be removed or reduced in value. Cable resistance also affects remote-sensor accuracy; 1Ω series resistance introduces about +1/2°C error. Setting bit 4 of the configuration register to 1 invokes the parasitic resistance cancellation mode. This rejects external resistance in excess of 100Ω while maintaining conversion accuracy. Low-Power Standby Mode Standby mode disables the ADC and reduces the supply-current drain to less than 10µA. Enter standby mode by forcing the STBY/pin low or through the RUN/STOP bit in the configuration byte register. Hardware and software standby modes behave almost identically; all data is retained in memory, and the SMB interface is alive and listening for reads and writes. The only difference is that in hardware standby mode, the one-shot command does not initiate a conversion. Standby mode is not a shutdown mode. With activity on the SMBus, extra supply current is drawn (see Typical Operating Characteristics). In software standby mode, the MAX6654 can be forced to perform A/D conversions through the one-shot command, despite the RUN/STOP bit being high. Activate hardware standby mode by forcing the STBY pin low. In a notebook computer, this line may be connected to the system SUSTAT# suspend-state signal. The STBY pin low state overrides any software conversion command. If a hardware or software standby command is received while a conversion is in progress, the conversion cycle is truncated, and the data from that conversion is not latched into either temperature reading register. The previous data is not changed and remains available. Supply-current drain during the 125ms conversion period is always about 550µA. Slowing down the conversion rate reduces the average supply current (see Typical Operating Characteristics). In between conversions, the supply current is about 25µA due to the current consumed by the conversion rate timer. In standby mode, supply current drops to about 3µA. At very low supply voltages (under the power-on-reset threshold), the supply current is higher due to the address pin bias currents. It can be as high as 100µA, depending on ADD0 and ADD1 settings. SMBus Digital Interface From a software perspective, the MAX6654 appears as a set of byte-wide registers that contain temperature data, alarm threshold values, or control bits. A standard SMBus 2-wire serial interface is used to read temperature data and write control bits and alarm threshold data. The device responds to the same SMBus slave address for access to all functions. The MAX6654 employs four standard SMBus protocols: Write Byte, Read Byte, Send Byte, and Receive Byte (Figures 3, 4, 5). 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. _______________________________________________________________________________________ 9 MAX6654 minor improvement in leakage and noise), but try to use them where practical. 8) Keep in mind that copper can’t be used as an EMI shield, and only ferrous materials such as steel work well. Placing a copper ground plane between the DXP-DXN traces and traces carrying high-frequency noise signals does not help reduce EMI. MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface 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 COMMAND 7 bits ACK S 8 bits Slave Address: equivalent to chip-select line ADDRESS RD ACK DATA 7 bits Command Byte: selects which register you are reading from P Data Byte: reads from the register set by the command byte Receive Byte Format WR ACK COMMAND 7 bits ACK P S ADDRESS 8 bits RD ACK 7 bits 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 Command Byte: sends command with no data, usually used for one-shot command S = Start condition P = Stop condition /// 8 bits Slave Address: repeated due to change in dataflow direction Send Byte Format S ADDRESS Shaded = Slave transmission /// = Not acknowledged Figure 3. SMBus Protocols A tLOW B C tHIGH E D F G I H J K M L SMBCLK SMBDATA 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 tSU:STO tBUF J = ACKNOWLEDGE CLOCKED INTO MASTER K = ACKNOWLEDGE CLOCK PULSE L = STOP CONDITION, DATA EXECUTED BY SLAVE M = NEW START CONDITION F = ACKNOWLEDGE BIT CLOCKED INTO MASTER G = MSB OF DATA CLOCKED INTO SLAVE H = LSB OF DATA CLOCKED INTO SLAVE I = SLAVE PULLS SMBDATA LINE LOW Figure 4. SMBus Write Timing Diagram A B tLOW C D E F G tHIGH H I J K L M SMBCLK SMBDATA 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 MASTER H = LSB OF DATA CLOCKED INTO MASTER I = MASTER PULLS DATA LINE LOW J = ACKNOWLEDGE CLOCKED INTO SLAVE K = ACKNOWLEDGE CLEAR PULSE Figure 5. SMBus Read Timing Diagram 10 ______________________________________________________________________________________ tBUF J = STOP CONDITION, DATA EXECUTED BY SLAVE K = NEW START CONDITION 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface TEMP (°C) ROUNDED TEMP (°C) DIGITAL OUTPUT 130.00 +127 0 111 1111 127.00 +127 0 111 1111 126.00 +126 0 111 1110 25.25 +25 0 001 1001 0.50 +1 0 000 0001 0.00 0 0 000 0000 <0.00 (Note 1) (Normal mode) 1 000 0000 -1 (Extended temp mode) 1 111 1111 <-64 (Extended temp mode) 1 000 0000 Diode fault (short or open) 1 000 0000 Table 3. Extended Resolution Register FRACTIONAL TEMPERATURE DIGITAL OUTPUT 0.000 000X XXXX 0.125 001X XXXX 0.250 010X XXXX 0.375 011X XXXX 0.500 100X XXXX 0.625 101X XXXX 0.750 110X XXXX 0.875 111X XXXX When the conversion rate is greater than 1Hz, temperature data can be read from the read internal temperature (00h) and read external temperature (01h) registers. The temperature data format is 7 bits plus sign in two’s-complement form for each channel, with the LSB representing 1°C (Table 2), transmitted MSB first. When the conversion rate is less than 1Hz, the extended data can be read from the read external extended temperature register (10h) and the read internal extended temperature register (11h), and the first 3 bits of the register represent 1/2, 1/4, and 1/8 of a degree. Measurements are offset by +1/2°C to minimize quantization errors; for example, +99.6°C is reported as +100°C. When the conversion rate is 1Hz or less, the first 8 bits of temperature data can be read from the read internal temperature (00h) and read external temperature (01h) registers, the same as for faster conversion rates. An additional 3 bits can be read from the read external extended temperature and read internal extended temperature registers, which extend the resolution to 0.125°C per LSB (Table 3). If a conversion ends after reading the main register but before reading the extended register, the extended register will contain the 3LSBs from the new conversion while the main register will contain the 8MSBs from the previous conversion. The extended data in this case will be meaningless. To avoid this problem, read extended resolution temperature data using one of the following approaches: 1) Put the MAX6654 into standby mode by setting bit 6 of the configuration register to 1. Initiate a one-shot conversion using Command Byte 0Fh. When this conversion is complete, read the contents of the temperature data registers. 2) If the MAX6654 is in run mode and the conversion rate is not set to either 1Hz or 8Hz, read the Status Byte. If the BUSY bit indicates that a conversion is in progress, wait until the conversion is complete as indicated by the BUSY bit. Then immediately read the contents of the temperature data registers. If no conversion is in progress, the data can be read within a few µs, which is a sufficiently short period to ensure that a new conversion can’t be completed until after the data has been read. Note: Extended resolution applies only for conversion speeds of 1Hz and below. Alarm Threshold Registers Four registers store alarm threshold data, with hightemperature (THIGH) and low-temperature (TLOW) registers for each A/D channel. If either measured temperature equals or exceeds the corresponding alarm threshold value, an ALERT interrupt is asserted. The POR state of both T HIGH registers is full scale (0111 1111, or +127°C). The POR state of both TLOW registers is 1100 1001 or -55°C. Diode Fault Alarm There is a continuity fault detector at DXP that detects whether the remote diode has an open-circuit condition or if DXP is shorted to DXN, GND, or VCC. If an open circuit exists, then the temperature register will be loaded with 1000 0000, and bit 3 of the status register will be set to 1 at the end of a conversion. This means that immediately after POR the status byte will indicate no fault is present until the end of the first conversion. ______________________________________________________________________________________ 11 MAX6654 Table 2. Data Format MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface Table 4. Read Format for Alert Response Address (0001100) BIT NAME 7 (MSB) ADD7 6 ADD6 5 ADD5 4 ADD4 3 ADD3 2 ADD2 1 ADD1 0 (LSB) 1 FUNCTION Command Byte Functions Provide the current MAX6654 slave address that was latched at POR (Table 9) Logic 1 Alert Interrupts The ALERT interrupt output signal is latched and can only be cleared by either reading the status register or by responding to an Alert Response address, if the fault condition has ceased. Interrupts are generated in response to THIGH and TLOW comparisons and when the remote diode is disconnected (for continuity fault detection). The interrupt does not halt automatic conversions; new temperature data continues to be available over the SMBus interface after ALERT is asserted. The interrupt output pin is open drain so that multiple devices can share a common interrupt line. The interrupt rate can never exceed the conversion rate. The MAX6654 responds to the SMBus Alert Response address, an interrupt pointer return-address feature (see Alert Response Address section). Prior to taking corrective action, always check to ensure that an interrupt is valid by reading the current temperature. Alert Response Address The SMBus Alert Response interrupt pointer provides quick fault identification for simple slave devices that lack the complex, expensive logic needed to be a bus master. Upon receiving an ALERT interrupt signal, the host master can broadcast a Receive Byte transmission to the Alert Response slave address (0001 100). Then any slave device that generated an interrupt attempts to identify itself by putting its own address on the bus (Table 4). The Alert Response can activate several different slave devices simultaneously, similar to the I2C General Call. If more than one slave attempts to respond, bus arbitration rules apply, and the device with the lower address code wins. The losing device does not generate an acknowledge and continues to hold the ALERT line low 12 until cleared. (The conditions for clearing an ALERT vary depending on the type of slave device. Successful reading of the alert response address clears the interrupt latch provided that the condition that caused the ALERT has already ceased. The ALERT is cleared after the slave address has been returned to the host.) The 8-bit command byte register (Table 5) is the master index that points to the various other registers within the MAX6654. The register’s POR state is 0000 0000, so that a Receive Byte transmission (a protocol that lacks the command byte) that occurs immediately after POR returns the current local temperature data. The oneshot command immediately forces a new conversion cycle to begin. If the one-shot command is received when the MAX6654 is in software standby mode (RUN/STOP bit = high), a new conversion is begun, after which the device returns to standby mode. If a conversion is in progress when a one-shot command is received, the command is ignored. If a one-shot command is received in autoconvert mode (RUN/STOP bit = low) between conversions, a new conversion begins, the conversion rate timer is reset, and the next automatic conversion takes place after a full delay elapses. Configuration Byte Functions The configuration byte register (Table 6) is a read-write register with several functions. Bit 7 is used to mask (disable) interrupts. Bit 6 puts the MAX6654 into software standby mode (STOP) or autoconvert (RUN) mode. Bit 5 selects the extended temperature range mode, which allows temperature data to be read down to -65°C. Bit 4 puts the MAX6654 into parasitic resistance cancellation mode (PRCM), which can reduce temperature measurement errors due to resistance in series with the sensing junction. Bit 3 should always be set to one (not the default value for operation with the CPU). Bits 2, 1, and 0 are internally set to one. Parasitic Resistance Cancellation Mode Resistance in series with the remote-sensing junction causes conversion errors on the order of 0.5°C per ohm. The MAX6654 can cancel the effect of parasitic series resistance by using the PRCM. If bit 4 of the configuration byte is set HIGH, then the PRCM is invoked, provided the conversion rate is set ≤ 1Hz. If the conversion rate is faster than this, then the setting of bit 4 in the configuration register is ignored. In the PRCM, the conversion time is doubled (to typically 500ms to read both local and remote diodes) but external resistances as high as 100Ω can be compensated. ______________________________________________________________________________________ 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface MAX6654 Table 5. Command-Byte Bit Assignments REGISTER ADDRESS POR STATE RLTS 00h 0000 0000 FUNCTION Read Internal Temperature RRTE 01h 0000 0000 Read External Temperature RSL 02h 0000 0000 Read Status Byte RCL 03h 0000 0000 Read Configuration Byte RCRA 04h 0000 0010 Read Conversion Rate Byte RLHN 05h 0111 1111 Read Internal High Limit RLLI 06h 1100 1001 Read Internal Low Limit RRHI 07h 0111 1111 Read External High Limit RRLS 08h 1100 1001 Read External Low Limit WCA 09h N/A Write Configuration Byte WCRW 0Ah N/A Write Conversion Rate Byte WLHO 0Bh N/A Write Internal High Limit WLLM 0Ch N/A Write Internal Low Limit WRHA 0Dh N/A Write External High Limit WRLN 0Eh N/A Write External Low Limit OSHT 0Fh N/A One-Shot RRET 10h 0000 0000 RLET 11h 0000 0000 N/A FEh 4D Read Device ID N/A FFh 08 Read Device Revision Read External Extended Temperature Read Internal Extended Temperature Table 6. Configuration-Byte Bit Assignments BIT NAME POR STATE FUNCTION 7 (MSB) MASK1 0 6 RUN/STOP 0 Standby mode control bit; if high, standby mode is initiated. 5 ETA 0 If high, lower temperature range will be extended from 0°C to -64°C. 4 PRCM 0 If high, parasitic resistance cancellation mode is enabled. 3 SPNP 0 Set high for operation with CPU. 2 to 0 RFU 0 Reserved. Masks ALERT interrupts if high. Status Byte Functions The status byte register (Table 7) indicates which (if any) temperature thresholds have been exceeded. This byte also indicates whether the ADC is converting and whether there is an open circuit in the remote diode DXP–DXN path. After POR, the normal state of all the flag bits is zero, assuming none of the alarm conditions are present. The status byte is cleared by any successful read of the status byte, unless the fault persists. Note that the ALERT interrupt latch is not automatically cleared when the status flag bit indicating the ALERT is cleared. The fault condition must be eliminated before the ALERT can be cleared. When reading the status byte, check for internal bus collisions caused by asynchronous ADC timing, or else disable the ADC prior to reading the status byte (through the RUN/STOP bit in the configuration byte). In one-shot mode, read the status byte only after the conversion is complete, which is 150ms max after the oneshot conversion is commanded. ______________________________________________________________________________________ 13 MAX6654 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface Table 7. Status Byte Bit Assignments BIT NAME POR STATE 7 (MSB) BUSY 0 ADC is busy converting when high. 6 LHIGH 0 Internal high-temperature alarm has tripped when high; cleared by POR or readout of the entire status byte if the fault condition no longer exists. 5 LLOW 0 Internal low-temperature alarm has tripped when high; cleared by POR or readout of the entire status byte if the fault condition no longer exists. 4 RHIGH 0 External high-temperature alarm has tripped when high; cleared by POR or readout of the entire status byte if the fault condition no longer exists. 3 RLOW 0 External low-temperature alarm has tripped when high; cleared by POR or readout of the entire status byte if the fault condition no longer exists. 2 OPEN 0 A high indicates an external diode open; cleared by POR or readout of the entire status byte if the fault condition no longer exists. 1 or 0 RFU 0 Reserved. FUNCTION The MAX6654 incorporates collision avoidance so that completely asynchronous operation is allowed between SMBus operations and temperature conversions. When autoconverting, if the THIGH and TLOW limits are close together, it’s possible for both high-temp and lowtemp status bits to be set, depending on the amount of time between status read operations (especially when converting at the fastest rate). In these circumstances, it is best not to rely on the status bits to indicate reversals in long-term temperature changes. Instead, use a current temperature reading to establish the trend direction. Conversion Rate Byte The conversion rate register (Table 8) programs the time interval between conversions in free-running autoconvert mode. This variable rate control can be used to reduce the supply current in portable-equipment applications. The conversion rate byte’s POR state is 02h (0.25Hz). The MAX6654 looks only at the 3LSB bits of this register, so the upper 5 bits are “don’t care” bits, which should be set to zero. The conversion rate tolerance is ±25% at any rate setting. Valid A/D conversion results for both channels are available one total conversion time (125ms nominal, 156ms maximum) after initiating a conversion, whether conversion is initiated through the RUN/STOP bit, hardware STBY/pin, one-shot command, or initial power-up. 14 Extended resolution and the parasitic resistance cancellation mode are available at conversion rates of 1Hz or lower. Slave Addresses The MAX6654’s device address can be set to one of nine different values by pin strapping ADD0 and ADD1 so that more than one MAX6654 can reside on the same bus without address conflicts (Table 9). The address pin states are checked at POR only, and the address data stays latched to reduce quiescent supply current due to the bias current needed for highZ state detection. The MAX6654 also responds to the SMBus Alert Response slave address (see the Alert Response Address section). POR and UVLO The MAX6654 has a volatile memory. To prevent ambiguous power-supply conditions from corrupting the data in memory and causing erratic behavior, a POR voltage detector monitors V CC and clears the memory if V CC falls below 2V (typ, see Electrical Characteristics). When power is first applied and VCC rises above 2.0V (typ), the logic blocks begin operating, although reads and writes at VCC levels below 3V are not recommended. A second VCC comparator, the ADC undervoltage lockout (UVLO) comparator, prevents the ADC from converting until there is sufficient headroom (VCC = 2.8V typ). ______________________________________________________________________________________ 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface Table 9. Slave Address Decoding (ADD0 and ADD1) DATA CONVERSION RATE (Hz) 00h 0.0625 ADD0 01h 0.125 02h 0.25 03h ADD1 ADDRESS 0 0 0011 000 0 High-Z 0011 001 0.5 0 1 0011 010 04h 1 High-Z 0 0101 001 05h 2 High-Z High-Z 0101 010 06h 4 High-Z 1 0101 011 07h 8 1 0 1001 100 08h-FFh Reserved 1 High-Z 1001 101 1 1 1001 110 Power-Up Defaults: • Interrupt latch is cleared. Note: High-Z means that the pin is left unconnected and floating. • Address select pins are sampled. • ADC begins autoconverting at a 0.25Hz rate. • Command byte is set to 00h to facilitate quick remote Receive Byte queries. • THIGH and TLOW registers are set to max and min limits, respectively. Chip Information TRANSISTOR COUNT: 12,504 ______________________________________________________________________________________ 15 MAX6654 Table 8. Conversion-Rate Control Byte 1°C Accurate Remote/Local Temperature Sensor with SMBus Serial Interface QSOP.EPS MAX6654 Package Information 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. 16 ____________________Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 © 2002 Maxim Integrated Products Printed USA is a registered trademark of Maxim Integrated Products.