19-1265; Rev 1; 3/98 KIT ATION EVALU E L B A AVAIL Remote/Local Temperature Sensor with SMBus Serial Interface ____________________________Features The MAX1617 (patents pending) is a precise digital thermometer that reports the temperature of both a remote sensor and its own package. The remote sensor is a diode-connected transistor—typically a low-cost, easily mounted 2N3904 NPN type—that replaces conventional thermistors or thermocouples. Remote accuracy is ±3°C for multiple transistor manufacturers, with no calibration needed. The remote channel can also measure the die temperature of other ICs, such as microprocessors, that contain an on-chip, diode-connected transistor. The 2-wire serial interface accepts standard System Management Bus (SMBus™) Write Byte, Read Byte, Send Byte, and Receive Byte commands to program the alarm thresholds and to read temperature data. The data format is 7 bits plus sign, with each bit corresponding to 1°C, in twos-complement format. 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 rate allows the user to control the supply-current drain. The MAX1617 is available in a small, 16-pin QSOP surface-mount package. ♦ Two Channels: Measures Both Remote and Local Temperatures ________________________Applications Desktop and Notebook Computers Central Office Telecom Equipment Smart Battery Packs Test and Measurement LAN Servers Industrial Controls Multi-Chip Modules ___________________Pin Configuration ♦ No Calibration Required ♦ SMBus 2-Wire Serial Interface ♦ Programmable Under/Overtemperature Alarms ♦ Supports SMBus Alert Response ♦ Accuracy: ±2°C (+60°C to +100°C, local) ±3°C (-40°C to +125°C, local) ±3°C (+60°C to +100°C, remote) ♦ 3µA (typ) Standby Supply Current ♦ 70µA (max) Supply Current in Auto-Convert Mode ♦ +3V to +5.5V Supply Range ♦ Small, 16-Pin QSOP Package _______________Ordering Information PART* MAX1617MEE TEMP. RANGE -55°C to +125°C *U.S. and foreign patents pending. __________Typical Operating Circuit 3V TO 5.5V 200Ω 0.1µF TOP VIEW N.C. 1 16 N.C. VCC 2 15 STBY DXP 3 14 SMBCLK DXN 4 PIN-PACKAGE 16 QSOP VCC STBY 10k EACH MAX1617 MAX1617 DXP 13 N.C. 12 SMBDATA N.C. 5 ADD1 6 11 ALERT GND 7 10 ADD0 GND 8 9 2N3904 N.C. SMBCLK SMBDATA DXN 2200pF ALERT CLOCK DATA INTERRUPT TO µC ADD0 ADD1 GND QSOP SMBus is a trademark of Intel Corp. †Patents Pending ________________________________________________________________ Maxim Integrated Products 1 For free samples & the latest literature: http://www.maxim-ic.com, or phone 1-800-998-8800. For small orders, phone 408-737-7600 ext. 3468. MAX1617 † ________________General Description MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface ABSOLUTE MAXIMUM RATINGS VCC to GND ..............................................................-0.3V to +6V DXP, ADD_ to GND ....................................-0.3V to (VCC + 0.3V) DXN to GND ..........................................................-0.3V to +0.8V SMBCLK, SMBDATA, ALERT, STBY to GND ...........-0.3V to +6V SMBDATA, ALERT Current .................................-1mA to +50mA DXN Current .......................................................................±1mA ESD Protection (SMBCLK, SMBDATA, ALERT, human body model) .......................................... 4000V ESD Protection (other pins, human body model)...............2000V Continuous Power Dissipation (TA = +70°C) 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, 10sec) .............................+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.3V, TA = 0°C to +85°C, unless otherwise noted.) PARAMETER CONDITIONS MIN TYP MAX UNITS ADC AND POWER SUPPLY Temperature Resolution (Note 1) Monotonicity guaranteed 8 Initial Temperature Error, Local Diode (Note 2) TA = +60°C to +100°C -2 2 TA = 0°C to +85°C -3 3 TR = +60°C to +100°C -3 3 TR = -55°C to +125°C -5 5 TA = +60°C to +100°C -2.5 2.5 TA = 0°C to +85°C -3.5 3.5 Temperature Error, Remote Diode (Notes 2 and 3) Temperature Error, Local Diode (Notes 1 and 2) Including long-term drift Supply-Voltage Range Undervoltage Lockout Threshold 3.0 VCC input, disables A/D conversion, rising edge 2.60 Undervoltage Lockout Hysteresis Power-On Reset Threshold Average Operating Supply Current VCC, falling edge 1.0 Logic inputs forced to VCC or GND 3 Hardware or software standby, SMBCLK at 10kHz 4 Auto-convert mode, average measured over 4sec. Logic inputs forced to VCC or GND. °C °C V V mV 2.5 V mV 10 0.25 conv/sec 35 70 2.0 conv/sec 120 180 125 156 ms 25 % µA Conversion Rate Timing Error Auto-convert mode -25 DXP forced to 1.5V °C µA 94 High level 80 100 120 Low level 8 10 12 DXN Source Voltage 2 1.7 SMBus static From stop bit to conversion complete (both channels) Address Pin Bias Current 2.95 50 Conversion Time Remote-Diode Source Current 5.5 2.80 50 POR Threshold Hysteresis Standby Supply Current Bits ADD0, ADD1; momentary upon power-on reset µA 0.7 V 160 µA _______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface (VCC = +3.3V, TA = 0°C to +85°C, unless otherwise noted.) PARAMETER CONDITIONS MIN TYP MAX UNITS SMBus INTERFACE Logic Input High Voltage STBY, SMBCLK, SMBDATA; VCC = 3V to 5.5V Logic Input Low Voltage STBY, SMBCLK, SMBDATA; VCC = 3V to 5.5V Logic Output Low Sink Current ALERT, SMBDATA forced to 0.4V ALERT Output High Leakage Current ALERT forced to 5.5V Logic Input Current Logic inputs forced to VCC or GND SMBus Input Capacitance SMBCLK, SMBDATA SMBus Clock Frequency (Note 4) DC SMBCLK Clock Low Time tLOW, 10% to 10% points 4.7 µs SMBCLK Clock High Time tHIGH, 90% to 90% points 4 µs 4.7 µs 500 ns SMBus Start-Condition Setup Time 2.2 V 0.8 6 V mA -1 1 µA 1 µA 100 kHz 5 pF SMBus Repeated Start-Condition Setup Time tSU:STA, 90% to 90% points SMBus Start-Condition Hold Time tHD:STA, 10% of SMBDATA to 90% of SMBCLK 4 µs SMBus Stop-Condition Setup Time tSU:STO, 90% of SMBCLK to 10% of SMBDATA 4 µs SMBus Data Valid to SMBCLK Rising-Edge Time tSU:DAT, 10% or 90% of SMBDATA to 10% of SMBCLK 800 ns SMBus Data-Hold Time tHD:DAT (Note 5) 0 µs SMBCLK Falling Edge to SMBus Data-Valid Time Master clocking in data 1 µs MAX UNITS ELECTRICAL CHARACTERISTICS (VCC = +3.3V, TA = -55°C to +125°C, unless otherwise noted.) (Note 6) PARAMETER CONDITIONS MIN TYP ADC AND POWER SUPPLY Temperature Resolution (Note 1) Monotonicity guaranteed 8 Initial Temperature Error, Local Diode (Note 2) TA = +60°C to +100°C -2 2 TA = -55°C to +125°C -3 3 Temperature Error, Remote Diode (Notes 2 and 3) TR = +60°C to +100°C -3 3 TR = -55°C to +125°C -5 5 3.0 5.5 V 156 ms 25 % Supply-Voltage Range Conversion Time From stop bit to conversion complete (both channels) 94 Conversion Rate Timing Error Auto-convert mode -25 Bits 125 °C °C _______________________________________________________________________________________ 3 MAX1617 ELECTRICAL CHARACTERISTICS (continued) ELECTRICAL CHARACTERISTICS (continued) (VCC = +3.3V, TA = -55°C to +125°C, unless otherwise noted.) (Note 6) PARAMETER CONDITIONS MIN TYP MAX UNITS SMBus INTERFACE VCC = 3V 2.2 VCC = 5.5V 2.4 Logic Input High Voltage STBY, SMBCLK, SMBDATA Logic Input Low Voltage STBY, SMBCLK, SMBDATA; VCC = 3V to 5.5V Logic Output Low Sink Current ALERT, SMBDATA forced to 0.4V ALERT Output High Leakage Current ALERT forced to 5.5V Logic Input Current Logic inputs forced to VCC or GND V 0.8 V 6 mA -2 1 µA 2 µA Note 1: Guaranteed but not 100% tested. Note 2: Quantization error is not included in specifications for temperature accuracy. For example, if the MAX1617 device temperature is exactly +66.7°C, the ADC may report +66°C, +67°C, or +68°C (due to the quantization error plus the +1/2°C offset used for rounding up) and still be within the guaranteed ±1°C error limits for the +60°C to +100°C temperature range. See Table 2. Note 3: A remote diode is any diode-connected transistor from Table 1. TR is the junction temperature of the remote diode. See Remote Diode Selection for remote diode forward voltage requirements. Note 4: The SMBus logic block is a static design that works with clock frequencies down to DC. While slow operation is possible, it violates the 10kHz minimum clock frequency and SMBus specifications, and may monopolize the bus. Note 5: Note that a transition must internally provide at least a hold time in order to bridge the undefined region (300ns max) of SMBCLK’s falling edge. Note 6: Specifications from -55°C to +125°C are guaranteed by design, not production tested. __________________________________________Typical Operating Characteristics (TA = +25°C, unless otherwise noted.) PATH = DXP TO GND 0 -10 1 ZETEX FMMT3904 0 MOTOROLA MMBT3904 SAMSUNG KST3904 -1 -20 3 10 30 LEAKAGE RESISTANCE (MΩ) 100 MAX1617TOC04 VIN = SQUARE WAVE APPLIED TO VCC WITH NO 0.1µF VCC CAPACITOR 9 VIN = 250mVp-p REMOTE DIODE 6 VIN = 250mVp-p LOCAL DIODE VIN = 100mVp-p REMOTE DIODE 3 0 -2 1 12 RANDOM SAMPLES PATH = DXP TO VCC (5V) 4 MAX1617TOC02 MAX1617TOC01 10 2 TEMPERATURE ERROR (°C) 20 TEMPERATURE ERROR vs. POWER-SUPPLY NOISE FREQUENCY TEMPERATURE ERROR vs. REMOTE-DIODE TEMPERATURE TEMPERATURE ERROR (°C) TEMPERATURE ERROR vs. PC BOARD RESISTANCE TEMPERATURE ERROR (°C) MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface -50 0 50 TEMPERATURE (°C) 100 150 50 500 5k 50k 500k FREQUENCY (Hz) _______________________________________________________________________________________ 5M 50M Remote/Local Temperature Sensor with SMBus Serial Interface 20 VIN = 50mVp-p VIN = 25mVp-p 0 10 VIN = 10mVp-p SQUARE WAVE APPLIED TO DXP-DXN TEMPERATURE ERROR (°C) TEMPERATURE ERROR (°C) VIN = 100mVp-p MAX1617TOC03 VIN = SQUARE WAVE AC COUPLED TO DXN TEMPERATURE ERROR (°C) 5 MAX1617TOC05 30 10 TEMPERATURE ERROR vs. DIFFERENTIAL-MODE NOISE FREQUENCY TEMPERATURE ERROR vs. DIFFERENTIAL-MODE NOISE FREQUENCY MAX1617TOC06 TEMPERATURE ERROR vs. COMMON-MODE NOISE FREQUENCY 5 0 VIN = 3mVp-p SQUARE WAVE APPLIED TO DXP-DXN 0 500 5k 50k 500k 5M 50M 50 500 5k 50k 500k 5M 50 50M 500 5k 50k 500k 5M FREQUENCY (Hz) FREQUENCY (Hz) FREQUENCY (Hz) TEMPERATURE ERROR vs. DXP–DXN CAPACITANCE STANDBY SUPPLY CURRENT vs. CLOCK FREQUENCY STANDBY SUPPLY CURRENT vs. SUPPLY VOLTAGE 10 25 VCC = 5V 20 15 10 50M ADD0, ADD1 = GND 60 VCC = 3.3V MAX1617TOC09 100 SUPPLY CURRENT (µA) SMBCLK IS DRIVEN RAIL-TO-RAIL 30 SUPPLY CURRENT (µA) VCC = 5V MAX1617TOC08 35 MAX1617TOC07 20 ADD0, ADD1 = HIGH-Z 20 6 3 5 0 0 0 0 20 40 60 80 100 1k DXP-DXN CAPACITANCE (nF) 10k 100k 0 1000k 1 2 3 4 5 SUPPLY VOLTAGE (V) SMBCLK FREQUENCY (Hz) OPERATING SUPPLY CURRENT vs. CONVERSION RATE RESPONSE TO THERMAL SHOCK VCC = 5V AVERAGED MEASUREMENTS 100 TEMPERATURE (°C) 400 300 200 100 MAX1617TOC11 125 MAX1617TOC10 500 SUPPLY CURRENT (µA) TEMPERATURE ERROR (°C) -5 -5 50 75 50 25 16-QSOP IMMERSED IN +115°C FLUORINERT BATH 0 0 0.0625 0.125 0.25 0.5 1 2 CONVERSION RATE (Hz) 4 8 0 T = -2 T=0 T=2 T=4 T=6 T=8 T = 10 TIME (sec) _______________________________________________________________________________________ 5 MAX1617 ____________________________Typical Operating Characteristics (continued) (TA = +25°C, unless otherwise noted.) MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface ______________________________________________________________Pin Description 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, 3V 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 A/D Positive Input for remote-diode channel. Do not leave DXP floating; tie DXP to DXN if no remote diode is used. Place a 2200pF capacitor between DXP and DXN for noise filtering. 4 DXN Combined Current Sink and A/D Negative Input. DXN is normally biased to a diode voltage above ground. 6 ADD1 SMBus Address Select pin (Table 8). ADD0 and ADD1 are sampled upon power-up. Excess capacitance (>50pF) at the address pins when floating may cause address-recognition problems. 7, 8 GND Ground 10 ADD0 SMBus Slave Address Select pin 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 = operate mode. _______________Detailed Description The MAX1617 (patents pending) is a temperature sensor designed to work in conjunction with an external microcontroller (µC) or other intelligence in thermostatic, process-control, or monitoring applications. The µC is typically a power-management or keyboard controller, generating SMBus serial commands by “bitbanging” general-purpose input-output (GPIO) pins or via a dedicated SMBus interface block. Essentially an 8-bit serial analog-to-digital converter (ADC) with a sophisticated front end, the MAX1617 contains a switched current source, a multiplexer, an ADC, an SMBus interface, and associated control logic (Figure 1). Temperature data from the ADC is loaded into two 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, typical), with excellent noise rejection. The multiplexer automatically steers bias currents through the remote and local diodes, measures their forward voltages, and computes 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 simply ignore the results of the unused channel. If the remote diode channel is unused, tie DXP to DXN rather than leaving the pins open. The DXN input is biased at 0.65V above ground by an internal diode to set up the analog-to-digital (A/D) inputs for a differential measurement. The worst-case DXP–DXN differential input voltage range is 0.25V to 0.95V. Excess resistance in series with the remote diode causes about +1/2°C error per ohm. Likewise, 200µV of offset voltage forced on DXP–DXN causes about 1°C error. 6 _______________________________________________________________________________________ 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 MAX1617 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 MAX1617 VCC Remote/Local Temperature Sensor with SMBus Serial Interface Figure 1. Functional Diagram _______________________________________________________________________________________ 7 MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface A/D Conversion Sequence If a Start command is written (or generated automatically in the free-running auto-convert mode), 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. Remote-Diode Selection Temperature accuracy depends on having a good-quality, diode-connected small-signal transistor. Accuracy has been experimentally verified for all of the devices listed in Table 1. The MAX1617 can also directly measure the die temperature of CPUs and other integrated circuits having on-board temperature-sensing diodes. 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 greater than 0.25V at 10µA; check to ensure this is true at the highest expected temperature. The forward voltage must be less than 0.95V 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 less than 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 seriously degrade the MAX1617’s effective accuracy. The thermal time constant of the QSOP-16 package is about 140sec in still air. For the MAX1617 junction temperature to settle to within +1°C after a sudden +100°C change requires about five time constants or 12 minutes. The use of smaller packages for remote sensors, such as SOT23s, improves the situation. 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. 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 auto-converting at the 8 Table 1. Remote-Sensor Transistor Manufacturers MANUFACTURER MODEL NUMBER Central Semiconductor (USA) CMPT3904 Motorola (USA) MMBT3904 National Semiconductor (USA) MMBT3904 Rohm Semiconductor (Japan) SST3904 Samsung (Korea) KST3904-TF Siemens (Germany) SMBT3904 Zetex (England) FMMT3904CT-ND Note: Transistors must be diode-connected (base shorted to collector). 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 plus 0.4V x 1mA. Package theta J-A is about 150°C/W, so with VCC = 5V and no copper PC board heat-sinking, the resulting temperature rise is: dT = 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. Higher capacitance than 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). _______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface 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 copper-solder 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 ones are more inductive and tend to pick up radiated noise. The 10 mil widths and spacings recommended in Figure 2 aren’t absolutely necessary (as they offer only a 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. PC Board Layout Checklist • Place the MAX1617 close to a remote diode. • • • • 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. MAX1617 PC Board Layout 1) Place the MAX1617 as close as practical to the remote diode. In a noisy environment, such as a computer motherboard, this distance can be 4 in. to 8 in. (typical) or more as long as the worst noise sources (such as CRTs, clock generators, memory buses, and ISA/PCI buses) are avoided. GND 10 MILS 10 MILS DXP MINIMUM 10 MILS DXN 10 MILS GND Figure 2. Recommended DXP/DXN PC Traces • Use guard traces flanking DXP and DXN and connecting to GND. • Place the noise filter and the 0.1µF V CC bypass capacitors close to the MAX1617. • Add a 200Ω resistor in series with VCC for best noise filtering (see Typical Operating Circuit). Twisted Pair and Shielded Cables For remote-sensor distances longer than 8 in., or in particularly noisy environments, a twisted pair is recommended. Its practical length is 6 feet to 12 feet (typical) 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 100 feet 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 DX_ 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. 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 via 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, _______________________________________________________________________________________ 9 MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface SMBus Digital Interface the MAX1617 can be forced to perform A/D conversions via the one-shot command, despite the RUN/STOP bit being high. From a software perspective, the MAX1617 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. Each A/D channel within the device responds to the same SMBus slave address for normal reads and writes. The MAX1617 employs four standard SMBus protocols: Write Byte, Read Byte, Send Byte, and Receive Byte (Figure 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 multi-master systems, since a second master could overwrite the command byte without informing the first master. 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 450µA. Slowing down the conversion rate reduces the average supply current (see Typical Operating Characteristics). In between conversions, the instantaneous 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-onreset 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. The temperature data format is 7 bits plus sign in twos-complement form for each channel, with each data bit representing 1°C (Table 2), transmitted MSB first. Measurements are offset by +1/2°C to minimize internal rounding errors; for example, +99.6°C is reported as +100°C. 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 ACK Command Byte: selects which register you are reading from DATA WR ACK COMMAND ACK P 8 bits Command Byte: sends command with no data, usually used for one-shot command P 8 bits Slave Address: repeated due to change in dataflow direction Data Byte: reads from the register set by the command byte Shaded = Slave transmission /// = Not acknowledged S 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 3. SMBus Protocols 10 /// Receive Byte Format 7 bits 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 ______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface TEMP. (°C) ROUNDED TEMP. (°C) DIGITAL OUTPUT DATA BITS SIGN MSB LSB +130.00 +127 0 111 1111 +127.00 +127 0 111 1111 +126.50 +127 0 111 1111 +126.00 +126 0 111 1110 +25.25 +25 0 001 1001 +0.50 +1 0 000 +0.25 +0 0 +0.00 +0 -0.25 Table 3. Read Format for Alert Response Address (0001100) BIT NAME 7 (MSB) ADD7 6 ADD6 5 ADD5 4 ADD4 3 ADD3 0001 2 ADD2 000 0000 1 ADD1 0 000 0000 +0 0 000 0000 0 (LSB) 1 -0.50 +0 0 000 0000 -0.75 -1 1 111 1111 -1.00 -1 1 111 1111 -25.00 -25 1 110 0111 -25.50 -25 1 110 0110 -54.75 -55 1 100 1001 -55.00 -55 1 100 1001 -65.00 -65 1 011 1111 -70.00 -65 1 011 1111 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 power-on-reset (POR) state of both THIGH 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. At the beginning of each conversion, the diode fault is checked, and the status byte is updated. This fault detector is a simple voltage detector; if DXP rises above V CC - 1V (typical) due to the diode current source, a fault is detected. Note that the diode fault isn’t checked until a conversion is initiated, so immediately after power-on reset the status byte indicates no fault is present, even if the diode path is broken. If the remote channel is shorted (DXP to DXN or DXP to GND), the ADC reads 0000 0000 so as not to trip either FUNCTION Provide the current MAX1617 slave address that was latched at POR (Table 8) Logic 1 the T HIGH or T LOW alarms at their POR settings. In applications that are never subjected to 0°C in normal operation, a 0000 0000 result can be checked to indicate a fault condition in which DXP is accidentally short circuited. Similarly, if DXP is short circuited to VCC, the ADC reads +127°C for both remote and local channels, and the device alarms. ALERT Interrupts The ALERT interrupt output signal is latched and can only be cleared by reading the Alert Response address. 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 devices can share a common interrupt line. The interrupt rate can never exceed the conversion rate. The interface 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 3). ______________________________________________________________________________________ 11 MAX1617 Table 2. Data Format (Twos-Complement) MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface Table 4. Command-Byte Bit Assignments REGISTER COMMAND POR STATE FUNCTION RLTS 00h 0000 0000* Read local temperature: returns latest temperature RRTE 01h 0000 0000* Read remote temperature: returns latest temperature RSL 02h N/A Read status byte (flags, busy signal) RCL 03h 0000 0000 Read configuration byte RCRA 04h 0000 0010 Read conversion rate byte RLHN 05h 0111 1111 Read local THIGH limit RLLI 06h 1100 1001 Read local TLOW limit RRHI 07h 0111 1111 Read remote THIGH limit RRLS 08h 1100 1001 Read remote TLOW limit WCA 09h N/A Write configuration byte WCRW 0Ah N/A Write conversion rate byte WLHO 0Bh N/A Write local THIGH limit WLLM 0Ch N/A Write local TLOW limit WRHA 0Dh N/A Write remote THIGH limit WRLN 0Eh N/A Write remote TLOW limit OSHT 0Fh N/A One-shot command (use send-byte format) *If the device is in hardware standby mode at POR, both temperature registers read 0°C. 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 until serviced (implies that the host interrupt input is level-sensitive). Successful reading of the alert response address clears the interrupt latch. Command Byte Functions The 8-bit command byte register (Table 4) is the master index that points to the various other registers within the MAX1617. 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 one-shot command immediately forces a new conversion cycle to begin. 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 auto-convert 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. 12 Configuration Byte Functions The configuration byte register (Table 5) is used to mask (disable) interrupts and to put the device in software standby mode. The lower six bits are internally set to (XX1111), making them “don’t care” bits. Write zeros to these bits. This register’s contents can be read back over the serial interface. Status Byte Functions The status byte register (Table 6) indicates which (if any) temperature thresholds have been exceeded. This byte also indicates whether or not 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 is cleared. When reading the status byte, you must check for internal bus collisions caused by asynchronous ADC timing, or else disable the ADC prior to reading the status byte (via 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. ______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface Table 7. Conversion-Rate Control Byte DATA CONVERSION RATE (Hz) AVERAGE SUPPLY CURRENT (µA typ, at VCC = 3.3V) BIT NAME POR STATE 7 (MSB) MASK 0 Masks all ALERT interrupts when high. 00h 0.0625 30 01h 0.125 33 02h 0.25 35 03h 0.5 48 0 Standby mode control bit. If high, the device immediately stops converting and enters standby mode. If low, the device converts in either one-shot or timer mode. 04h 1 70 05h 2 128 06h 4 225 07h 8 425 08h to FFh RFU — 6 5–0 RUN/ STOP RFU 0 FUNCTION Reserved for future use Table 6. Status-Byte Bit Assignments BIT NAME FUNCTION 7 (MSB) BUSY A high indicates that the ADC is busy converting. 6 LHIGH* A high indicates that the local hightemperature alarm has activated. 5 LLOW* A high indicates that the local lowtemperature alarm has activated. 4 RHIGH* A high indicates that the remote hightemperature alarm has activated. 3 RLOW* A high indicates that the remote lowtemperature alarm has activated. 2 OPEN* A high indicates a remote-diode continuity (open-circuit) fault. 1 RFU Reserved for future use (returns 0) 0 (LSB) RFU Reserved for future use (returns 0) *These flags stay high until cleared by POR, or until the status byte register is read. To check for internal bus collisions, read the status byte. If the least significant seven bits are ones, discard the data and read the status byte again. The status bits LHIGH, LLOW, RHIGH, and RLOW are refreshed on the SMBus clock edge immediately following the stop condition, so there is no danger of losing temperature-related status data as a result of an internal bus collision. The OPEN status bit (diode continuity fault) is only refreshed at the beginning of a conversion, so OPEN MAX1617 Table 5. Configuration-Byte Bit Assignments data is lost. The ALERT interrupt latch is independent of the status byte register, so no false alerts are generated by an internal bus collision. When auto-converting, if the THIGH and TLOW limits are close together, it’s possible for both high-temp and low-temp 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’s best not to rely on the status bits to indicate reversals in long-term temperature changes and instead use a current temperature reading to establish the trend direction. Conversion Rate Byte The conversion rate register (Table 7) programs the time interval between conversions in free-running autoconvert mode. This variable rate control reduces the supply current in portable-equipment applications. The conversion rate byte’s POR state is 02h (0.25Hz). The MAX1617 looks only at the 3 LSB 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 via the RUN/STOP bit, hardware STBY pin, one-shot command, or initial power-up. Changing the conversion rate can also affect the delay until new results are available. See Table 8. ______________________________________________________________________________________ 13 MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface Table 8. RLTS and RRTE Temp Register Update Timing Chart OPERATING MODE CONVERSION INITIATED BY: NEW CONVERSION RATE (CHANGED VIA WRITE TO WCRW) TIME UNTIL RLTS AND RRTE ARE UPDATED Auto-Convert Power-on reset n/a (0.25Hz) 156ms max Auto-Convert 1-shot command, while idling between automatic conversions n/a 156ms max Auto-Convert 1-shot command that occurs during a conversion n/a When current conversion is complete (1-shot is ignored) Auto-Convert Rate timer 0.0625Hz 20sec Auto-Convert Rate timer 0.125Hz 10sec Auto-Convert Rate timer 0.25Hz 5sec Auto-Convert Rate timer 0.5Hz 2.5sec Auto-Convert Rate timer 1Hz 1.25sec Auto-Convert Rate timer 2Hz 625ms Auto-Convert Rate timer 4Hz 312.5ms Auto-Convert Rate timer 8Hz 237.5ms Hardware Standby STBY pin n/a 156ms Software Standby RUN/STOP bit n/a 156ms Software Standby 1-shot command n/a 156ms Slave Addresses The MAX1617 appears to the SMBus as one device having a common address for both ADC channels. The device address can be set to one of nine different values by pin-strapping ADD0 and ADD1 so that more than one MAX1617 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 high-Z state detection. The MAX1617 also responds to the SMBus Alert Response slave address (see the Alert Response Address section). Table 9. Slave Address Decoding (ADD0 and ADD1) ADD0 ADD1 ADDRESS GND GND 0011 000 GND High-Z 0011 001 GND VCC 0011 010 High-Z GND 0101 001 High-Z High-Z 0101 010 High-Z VCC 0101 011 VCC GND 1001 100 VCC High-Z 1001 101 VCC VCC 1001 110 POR and UVLO Note: High-Z means that the pin is left unconnected and floating. The MAX1617 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 VCC and clears the memory if VCC falls below 1.7V (typical, see Electrical Characteristics table). When power is first applied and VCC rises above 1.75V (typical), the logic blocks begin operating, although reads and writes at VCC levels below 3V are not recommended. A second VCC comparator, the ADC UVLO comparator, prevents the ADC from converting until there is sufficient headroom (VCC = 2.8V typical). Power-Up Defaults: • Interrupt latch is cleared. • Address select pins are sampled. • ADC begins auto-converting 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. 14 ______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface tLOW B tHIGH C E D F G I H J K L MAX1617 A M SMBCLK SMBDATA tHD:STA tSU: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 J I K SMBCLK SMBDATA tSU:STA tHD:STA A = START CONDITION B = MSB OF ADDRESS CLOCKED INTO SLAVE C = LSB OF ADDRESS CLOCKED INTO SLAVE D = R/W BIT CLOCKED INTO SLAVE tSU:STO tSU:DAT 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 tBUF I = ACKNOWLEDGE CLOCK PULSE J = STOP CONDITION K = NEW START CONDITION Figure 5. SMBus Read Timing Diagram Programming Example: Clock-Throttling Control for CPUs An untested example of pseudocode for proportional temperature control of Intel mobile CPUs via a powermanagement microcontroller is given in Listing 1. This program consists of two main parts: an initialization routine and an interrupt handler. The initialization routine checks for SMBus communications problems and sets up the MAX1617 configuration and conversion rate. The interrupt handler responds to ALERT signals by reading the current temperature and setting a CPU clock duty factor proportional to that temperature. The relationship between clock duty and temperature is fixed in a lookup table contained in the microcontroller code. Note: Thermal management decisions should be made based on the latest temperature obtained from the MAX1617 rather than the value of the Status Byte. The MAX1617 has a very quick response to changes in its environment due to its sensitivity and its small thermal mass. High and low alarm conditions can exist in the Status Byte due to the MAX1617 correctly reporting environmental changes around it. ______________________________________________________________________________________ 15 MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface Listing 1. Pseudocode Example 16 ______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface MAX1617 Listing 1. Pseudocode Example (continued) ______________________________________________________________________________________ 17 MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface Listing 1. Pseudocode Example (continued) 18 ______________________________________________________________________________________ Remote/Local Temperature Sensor with SMBus Serial Interface QSOP.EPS ______________________________________________________________________________________ 19 MAX1617 ________________________________________________________Package Information MAX1617 Remote/Local Temperature Sensor with SMBus Serial Interface NOTES 20 ______________________________________________________________________________________