Измерение температуры процессоров AMD


Эта работа была прислана на наш "бессрочный" конкурс статей.


Точное измерение температуры является жизненной (иногда в буквальном смысле – для процессора) необходимостью оверклокера. К сожалению, до сих пор эта проблема полностью не решена. Измерение при помощи встроенного термодиода поддерживают далеко не все материнские платы. Кроме того, термочитерство биосописателей общеизвестно. В каких единицах они меряют температуру не знает никто, но уж точно не в градусах. А точность подсокетных датчиков вообще притча во языцех.

Я, например, столкнулся с такой ситуацией. Есть два компьютера, комплектация одинаковая, включая корпуса и кулеры. Процессоры Duron1400@Athlon2100+ из одной партии, напряжение питания 1.6 вольта. Единственное отличие - один на основе EpoX 8K3A+, второй – EP-8K9AI, заметьте одна фирма! Так вот, в первом компьютере, подсокетный датчик в покое показывает 48 градусов, а во втором, абсолютно в тех же условиях – 33 градуса. Разброс 15 градусов. Мало того. При установке тактовой частоты процессора 1050 МГц (100*10.5) и напряжении питания 1.4 в в системе на основе EP-8K9AI, подсокетный датчик показывает температуру процессора ниже температуры окружающей среды, без всякой фреонки! Как в таких антисанитарных условиях разгонять процессор?

В начале я хотел было сделать электронный термометр с использованием внутреннего термодиода. Но потом отказался от этой затеи. Измерение температуры процессора не только моя проблема. Масса статей, и в том числе на весьма уважаемом мною сайте Overclockers, грешат субъективизмом и содержат явно недостоверную информацию именно по причине невозможности точного измерения температуры штатными методами, предлагаемыми нам изготовителями материнских плат. Да и конференции, темы, посвященные охлаждению процессоров, вызывают самые горячие, иногда просто до неприличия, споры.

Доступ к термодиоду на материнских платах, не поддерживающих измерение температуры с его помощью, возможен только при помощи пайки. Далеко не всем можно рекомендовать такого рода операции. Риск повредить материнку слишком велик. В поисках решения я решил обратиться непосредственно к фирме AMD. Уж они то лучше всех знают, как надлежит мерить реальную температуру своих процессоров. На официальном сайте AMD я без особого труда нашел документ с подробнейшими рекомендациями. Он называется "Methodologies for Measuring Temperature on AMD Athlon and AMD Duron Processors". Большинство иллюстраций для этой статьи взяты оттуда.

Авторы этого документа рекомендуют использовать для измерения температуры термопары. Возможно, это лучший вариант, но сделать в домашних условиях достаточно точный измеритель на основе термопары и правильно откалибровать его весьма проблематично. Поэтому я решил найти более простое решение. Мне удалось подыскать недорогой, простой в использовании и обладающий вполне достаточной точностью полупроводниковый датчик температуры. Это TMP37 фирмы Analog Devices. В "Промэлектронике" он стоит менее доллара. Есть и другие, но они либо не удовлетворяют всем предъявляемым требованиям, либо уж очень дорогие.

Что же представляет из себя датчик TMP37? Эта микросхема выпускается в корпусах SOT25, SO8 или обычном транзисторном корпусе TO92.





Можно использовать любой вариант, но корпуса SOT25 и SO8 предпочтительнее.

Цоколевка микросхем.

Микросхема запитывается от одного источника питания +(2.7-5.5) В.

Выходное напряжение датчика прямо пропорционально температуре корпуса датчика в градусах Цельсия. При температуре 100 градусов выходное напряжение 2 вольта. Абсолютная точность без дополнительной калибровки для датчика с суффиксом F 1 градус, без оного 2 градуса. Линейность для любой модификации не хуже 0,5%. Выходной ток датчика не должен превышать 50 микроампер. При этом дополнительная погрешность за счет саморазогрева датчика не превышает 0,1 градуса.





Типовая схема включения. Вход Shutdown используется в многоканальных системах и для нас не очень интересен. Его можно просто оставить неподключенным. Конденсатор, блокирующий питание, нужен для уменьшения шумов выходного напряжения датчика, при использовании его в микроконтроллерных устройствах. В нашем случае, заметного влияния он не оказывает и его можно не ставить.

Установка датчика на процессор показана на рисунках. Внешний вид датчика TMP37 отличается от датчиков, использованных в фирме AMD, но это не принципиально.

Приклеиваем датчик к подложке процессора. На следующих рисунках видно, что инженер, проводивший измерения, не был сильно озабочен хорошим тепловым контактом датчика с процессором. Датчики даже не приклеены, а просто прижаты полосками скотча. В общем-то, понятно, почему. Хороший тепловой контакт критичен, когда нужно поддерживать постоянную передачу тепла через него. Например, от греющегося процессора к охлаждаемому радиатору. В случае датчика, передача тепла прекратится, как только температура датчика выровняется с температурой процессора. Сам датчик тепло практически не рассеивает и не очень хороший тепловой контакт в данном случае просто приведет к некоторому увеличению времени выравнивания температур. Учитывая, что датчик имеет массу менее 0.1 грамма и изготовлен из пластмассы с невысокой теплоемкостью, требования к тепловому контакту минимальные. Я не доверяю скотчу, и для приклейки использовал нитроклей для обуви. Он достаточно крепко держит и, в тоже время, позволяет сколупнуть датчик с процессора, не оставив никаких следов.

Пропускаем провода от датчика под рамкой сокета.

Накладываем процессор на сокет, аккуратно подтягивая провод, чтобы он не образовывал петель.

Устанавливаем процессор в сокет. Инженеры фирмы AMD исследовали погрешность измерения температуры, которая может возникнуть из-за установки датчика не точно под кристаллом.





Здесь показаны три датчика, один установлен по центру и два со смещением от центра процессора.

На рисунке приведены три графика зависимости температуры датчика от истинной температуры кристалла в зависимости от места установки датчика. Самый нижний черный график соответствует установке термодатчика точно под кристаллом. Красный график соответствует измерению температуры с использованием термодиода процессора. Видно, что погрешность от неправильной установки датчика не столь велика, и уж точно несравнима с погрешностью подсокетных датчиков на большинстве материнских плат. Ну и какие же нужно иметь кривые руки, чтобы не суметь приклеить датчик по центру!

Систематическая погрешность, равная приблизительно 12%, в случае установки датчика по центру процессора, возникающая из-за разницы истинной и измеренной температуры, может быть легко скомпенсирована соответствующим расчетом выходного делителя напряжения.

На рисунках приведены схемы измерителей с выходом на магнитоэлектрическую головку чувствительностью 50 микроампер с внутренним сопротивлением 2 кОм и цифровой вольтметр (китайский тестер DT830D или аналогичный) установленный на предел 200 милливольт. В первом случае вся шкала соответствует 100 градусам цельсия (0 естественно 0 градусов), во втором случае прибор показывает температуру непосредственно в градусах. Резисторы можно подобрать, измеряя сопротивление нескольких экземпляров с близкими значениями, цифровым тестером. Второй вариант – взять резистор со значением чуть меньше требуемого и соединить последовательно с ним еще один, так что бы результирующее сопротивление было равно указанному на схеме.

В самом неудачном случае, когда все погрешности суммируются с одним знаком можно рассчитывать на ошибку порядка 2-3 градусов Цельсия. Такая точность вполне сравнима с предельно достижимой точностью измерителя, основанного на внутреннем термодиоде процессора. Можно увеличить точность измерений в несколько раз, если откалибровать датчик при помощи стакана с горячей водой и лабораторного термометра. Достаточна калибровка в одной точке, 50 градусов Цельсия, с последующим пересчетом выходного резисторного делителя. По моей прикидке, вполне реально достигнуть общей погрешности менее 1 градуса в диапазоне температур 25-75 градусов. Только нужно ли это вам? Самое главное, на мой взгляд, это даже не столько высокая точность, сколько гарантированная повторяемость результатов.

Я получил, наконец, истинное значение температуры процессора. На обеих платах два экземпляра измерителя показали мне почти одинаковую температуру 44-42 градуса! Что характерно, подсокетный датчик температуры более старой платы давал меньшую погрешность. Видимо в Epox решили ублажить пользователей заниженными значениями температуры процессора в новом изделии. Планирую написать им письмо с предложением ввести в биос функцию, которая опрашивала бы пользователя, какая температура ему нравится, и ее и индицировать .





Некоторым недостатком этой простейшей конструкции является то, что температура индицируется на внешнем индикаторе, а не на экране монитора. Но в некоторых случаях это может быть даже полезно, например, во время игры в полноэкранном режиме. Ну а достоинства – точность, повторяемость результатов, простота конструкции и дешевизна – надеюсь, перевесят в глазах читателей некоторые недостатки. В конце концов, если вам уж очень сильно не нравится наличие внешнего индикатора, можете составить график зависимости температуры, показываемой подсокетным датчиком, от истинной. Я предлагаю использовать измеритель истинной температуры во всех случаях, когда данные о температуре предполагается использовать в статье. Во избежание, так сказать...


Ждём Ваших комментариев в специально созданной ветке конференции.

Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Страницы материала
Страница 1 из 0
Оценитe материал
рейтинг: 4.0 из 5
голосов: 64


Возможно вас заинтересует

Популярные новости

Сейчас обсуждают