6
\$\begingroup\$

I would like to measure the resistance of a thermistor integrated in an older CPU, the Motorola Freescale NXP 68060, but the documentation is limited. This is all it has to say on the subject:

THERM1 and THERM0 are connected to an internal thermal resistor and provide information about the average temperature of the die. The resistance across these two pins is proportional to the average temperature of the die. The temperature coefficient of the resistor is approximately 1.2 2.8 Ω/°C with a nominal resistance of 400Ω 780Ω at 25°C.

The corrected numbers comes from an errata.

What I can't figure out is what technique has been used to manufacture this, and how that affects the design of a circuit that can measure its resistance. Every other on-chip sensor I've seen has been of a diode type, and when reading about PTCs, they all seem to be made with a different process than what a common CPU is made with.

Is there a name for this type of thermistor?, and related, is there a "standard" method used to convert this resistance into a voltage that I can then sample with an A/D-converter? It's difficult to find reference designs since I don't know what to search for. Presumably, one constraint is that I can't let either end of the thermistor go outside the CPU's GND or VCC, but maybe there are other constraints I am not aware of.

\$\endgroup\$
4
\$\begingroup\$

When you make a "thermal resistor", you generally just run a strip of polysilicon for a distance across the die. I cannot speak for the 68060; however, when I design semiconductors I have an area that looks like an + in the middle of the IC for power distribution, the H-tree of clock. I generally just run a poly strip, or M1 with well ties across this same space. It depends on the process and the rules.

I've attached a photo of an IC that I did that was 6mm x 4mm. There's a resistor that runs across on M1 that was 1K that should change 5ohm/degC. One thing to mention is that this 1K is nominal, like your 780ohm number. The resistance can vary a bit with etching between runs.

Die Photo

If you look around on the web, MOSIS used to publish test results that give you ohm/square for M1, poly, etc. You can use that to determine what would be best for a specific application.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Thanks! That's very interesting! Yes, I'm aware that it will vary a bit. Sadly they do not mention anything about the variance. Btw, I think your dimensional units are off by a factor of 1000. :) \$\endgroup\$ – pipe Feb 3 '16 at 6:06
  • \$\begingroup\$ one more note, is that I always use external discrete parts to calculate the value because it's a huge use of space for me to have opamps on die, and even resistors. If you look on an Amiga schematic for a 68060, you probably can find out how the resistor was used in production. \$\endgroup\$ – b degnan Feb 3 '16 at 8:06
  • \$\begingroup\$ As far as I am aware, there are no Amiga expansion boards that uses the thermistor, supposedly because it did not exist in the older 68k CPUs. \$\endgroup\$ – pipe Feb 3 '16 at 8:18
1
\$\begingroup\$

It's not clear how the thermistor is made, but that is pretty much irrelevant. Regardless, the quote you've listed establishes almost everything you need to know.

The simplest circuit assumes you have a convenient stable voltage reference. Then you can make

schematic

simulate this circuit – Schematic created using CircuitLab

You pick the voltage range over temperature by selecting the reference voltage and the value of R1. For a given value Rt of the thermistor, the output voltage $$V = (\frac{Vt}{Vt + R1}) VREF $$ If you have a VREF provided by the A/D converter which corresponds to full scale, a decent starting point would be to set R1 at the thermistor resistance corresponding to some nominal chip temperature like 60 degrees C.

That circuit has a slight difficulty: the voltage it produces is not linear with respect to temperature, although this is not necessarily a problem, since you can compute the results expected beforehand, and then find the temperature which corresponds to your measurement.

A somewhat "better" circuit, or at least one easier to interpret, uses an op amp (or two), and looks like

schematic

simulate this circuit

In this circuit, R1 and VREF produce a constant current which, when pushed through the thermistor, produces a voltage. Howevever, this voltage is negative, which is why you'll need a V- for the op anps. The second op anp inverts the signal to bring it positive, while the ratio of R2 and R3 add extra gain. Finally, R4 produces an offset so that the circuit can be adjusted to produce 0 volts for any desired temperature.

The only unknown in these circuits is what current the thermistor can handle. I'd recommend about 1 mA as a target. Adjust resistors accordingly.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ So you don't see a problem forcing one end of the resistor attached to the die of the chip to a voltage lower than GND? I'm thinking it could cause latchups or related issues. What about driving a current of 1 mA through what is likely a ultra-tiny piece of silicon? I'm worried that it might self-heat too much when used with these traditional thermistor circuits. \$\endgroup\$ – pipe Feb 3 '16 at 6:12
  • \$\begingroup\$ You can't force a pin like that below GND potential -- there are ESD and other diodes also connected that will prevent it. It's also completely unnecessary -- the thermistor is not particularly accurate (either at its initial set point, or its actual temperature coefficient) -- just use the ADC and calibrate as well as you can. \$\endgroup\$ – jp314 Feb 3 '16 at 6:26
0
\$\begingroup\$

It's probably some specific layer in the chip that has a variable resistance with temperature. Note that at 25 C, probably difference chips will have difference resistances also, so you'll have to calibrate your system.

Easiest way to measure is to use a fixed R (1k owed be a good starting point) between supply and one one of this R, and connect the other end to GND. Measure the resulting resistor divider with an ADC. You'll have to calculate the equations for ADC -> Temperature.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Yeah, I suppose I would have to calibrate it somehow. Fortunately I'm not doing this on a very large scale. The resistor divider is easy, but it will pull roughly 2 mA through this ultra-tiny resistor. I'm afraid it will cause much more self-heating than what is possible in a discrete thermistor. Maybe I'm wrong, and the current is dwarfed by the (up to) 1 Ampere that the CPU can draw. \$\endgroup\$ – pipe Feb 3 '16 at 6:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.