Обход встроенной защиты PIC-микроконтроллеров
В комментариях к недавнему топику о вскрытии процессора была упомянута статья о том, как удалось обойти встроенную защиту от чтения прошивки микроконтроллера (т.н. Fuse-биты). Мне она понравилась, ниже — перевод с некоторыми дополнениями и пояснениями.
Взлом МК PIC18F1320
Ну, сами понимаете, есть еще некоторые ситуации, когда такие навыки могут пригодиться.
Я купил четыре PIC18F1320 и начал их мучать. Вот так выглядит PIC18F1320 в первозданном, не раскуроченном виде:
Первое, что предстоит сделать, это внять верхнюю часть корпуса, чтобы стали доступны кремниевые внутренности микроконтроллера. Хотя существует достаточно много любительских способов сделать это, но обычно они основаны на применении азотной или серной кислоты. Во-первых, это, скорее всего, не те вещи, которые вы очень хотите видеть рядом с собой. Во-вторых, их непросто достать, поскольку, например, азотная кислота является одним из компонентов для изготовления взрывчатых веществ. Я решил, что самый простой и надежный способ — отправить микроконтроллеры в лабораторию анализа отказов, такую как MEFAS, и за $50 и 2 дня получить на руки уже «обезглавленные» компоненты. Для этого проекта я удалил компаунд с трех микроконтроллеров. Два из них остались полностью рабочими, а один лишился корпуса полностью, т.е. остался только сам чип. Это было продиктовано конструктивными особенностями моего микроскопа при больших увеличениях.
Недолгое обследование поверхности чипов позволило выявить некоторые характерные участки микроконтроллера, показанные ниже:
Видны (по часовой стрелке): 8 KB flash-памяти, источник опорного напряжения, зарядовый насос для программирования flash/EEPROM памяти, 256 байт EEPROM памяти, втроенные таймеры и цепи тактирования, вычислительное ядро, ПЗУ с микрокодом, массив с fuse-битами, 256 байт ОЗУ, АЦП. (
было бы очень интересно узнать, как он все это определил по внешнему виду
)
Одна структура сразу привлекла мое внимание: ряд металлических экранов над транзисторами, которые располагались в правильном порядке, и количество которых совпадало с количеством fuse-бит. Полное перекрытие элементов металлическими экранами на кремниевых кристаллах встречается очень редко, и само собой такие элементы привлекают к себе внимание, т.к. содержат что-то крайне важное.
Немного подумаем об этих металлических экранах. Для чего они нужны? Во-первых, вспомним некоторые интересные факты о технологии flash (этот тип памяти применяется в том числе и в PIC-микроконтроллерах для хранения fuse-бит). Flash-технология подразумевает использование транзисторов с плавающим затвором, очень похожие на те, что применялись в старых микросхемах ПЗУ с ИФ-стиранием (вы же помните 2616-е в керамическом корпусе и с кварцевым стеклом?). И во flash, и в УФ-ППЗУ данные сохраняются путем инжектирования электронов на плавающий затвор при помощи тоннельного эффекта, где эти электроны могут находиться десятилетиями. Дополнительные электроны в плавающем затворе создают заметные изменения в характеристиках транзистора. Разница заключается в том, что во flash-памяти для стирания информации достаточно электрических импульсов, в то время как в УФ-ППЗУ для того чтобы «выгнать» электроны с плавающего затвора необходимы фотоны с высокой энергией. Для этого необходим ультрафиолет с длинной волны примерно 250 нм. Для того, чтобы УФ-излучение не слишком сильно ослабевало, применяются кварцевые стекла (те самые окошечки на старых микросхемах ПЗУ).
Важный вывод, который можно сделать из вышеуказанных фактов: flash память тоже может быть стерта при помощи УФ-излучения, т.к. она имеет практически ту же транзисторную структуру, что и УФ-ППЗУ устройства. Корпус устройств с flash-памятью обычно мешает попаданию ультрафиолета на поверхность кристалла, но так как наш PIC микроконтроллер теперь лишен пластиковой верхушки корпуса, то мы может применить УФ-излучение и посмотреть, что из этого выйдет.
Я провел эксперимент, в котором запрограммировал PIC-контроллер последовательными значениями от 0x00 до 0xFF, и затем проэкспонировал его в моем УФ-ППЗУ стирателе, пока принимал душ и проверял почту.
Когда я извлек контроллер из стирателя, то обнаружил, что flash-память действительно была очищена и вернулась в изначальное состояние (все значения 0xFF), и что защитные fuse-биты так же были деактивированы. Так же следует учитывать, что УФ-излучение действует и на EEPROM-память.
Ясно, что металлические пластины над защитными fuse-битами как раз служат защитой от того, чтобы сбросить их отдельно от flash-памяти программ.
Картинка иллюстрирует проблему (и ее решение), с которой я столкнулся. Для того чтобы стереть информацию на транзисторе flash-памяти, сильное УФ-излучение должно достигать его плавающего затвора. А металлические экраны препятствуют этому, эффективно отражая УФ-лучи.
Однако, благодаря разности между коэффициентами преломления света для оксида и кремния, свет, падая под некоторым углом, будет отражаться от его поверхности. Чтобы получше понять этот эффект можете прыгнуть в бассейн и посмотреть на воду почти на уровне глаз. Вода будет обладать очень хорошей отражательной способностью как раз из-за разницы коэффициентов преломления воды и воздуха. Это называется полное внутреннее отражение.
Это отражение как раз можно использовать, чтобы заставить УФ-излучение отражаться от металлической поверхности экрана и падать обратно на плавающий затвор транзистора. Итак, поворачивая PIC-микроконтроллер внутри ПЗУ-стирателя, я могу направить достаточно света для того чтобы он, отразившись в области транзистора flash-памяти, вызвал его стирание. После нескольких попыток я разработал технологию, которая кажется работает вполне неплохо.
Это фото микроконтроллера внутри ПЗУ-стирателя (синее свечение вокруг контроллера обусловлено работой УФ-лампы). Микроконтроллер закреплен под углом в антистатическом материале.
Но все это не может защитить от стирания нужных данных в той части flash-памяти, где хранится программа микроконтроллера. Для того чтобы предотвратить стирание этих данных используется сплошная маска, которая была очень аккуратно вырезана из изоленты и прикреплена к кристаллу с помощью двух пинцетов, микроскопа и недрогнувшей руки ) Изолента эффективно блокирует прохождение ультрафиолета, тем самым защищая закрытую область памяти от стирания, а так же поглощает отраженный от кремниевой подложки ультрафиолет.
Это фото кристалла с прикрепленной маской над областью flash-памяти.
Используя эту технику я наконец смог сбросить защитные fuse-биты без стирания основной программы микроконтроллера. Этим же способом можно стирать только некоторую часть flash-памяти. Ура!
Замечания
Очевидно, что описанный способ подходит только для тех устройств, которые содержат перепрограммируемые fuse-биты. Если биты защиты программируются лишь однократно (а такое бывает), то такая методика не подходит. В этих устройствах просто пережигаются тонкие проводники на кристалле. Однако мой коллега сказал, что и на этот случай разработаны свои методы борьбы (я думаю, восстанавливают контакт каким-то схожим микрохирургическим образом). Знаю так же, что эта операция стоит ой как недешево.
Так же хочется заметить, что во всенародно любимых микроконтроллерах AVR fuse-биты имеют похожую структуру (точно так же перепрограммируются), что позволяет надеяться, что описанная методика пригодна и для них!
UPD: исправил по возможности огрехи перевода (про ширину запрещенной зоны, магнитную ленту и способ заполнения памяти контроллера).
UPD 2: эта же тема, но для микроконтроллеров AVR, затрагивается здесь и здесь. Вот тут можно заказать чтение прошивки и даже купить спец. приборы.
Добавляем анлок в биос раз и навсегда
С помощью этой инструкции вы сможете добиться анлока турбо-буста не на уровне системы, как в стандартной инструкции, а на уровне bios. Этот метод имеет весомые преимущества:
- Выполняется несколько проще
- Все действия достаточно выполнить только 1 раз
- Анлок не слетит при смене операционной системы или компонентов ПК
- Анлок будет работать как в Windows, так и в Linux и любых других ОС
Но есть и недостатки:
- Драйверов, подходящих для встраивания (FFS) выпущено заметно меньше, чем стандартных EFI-версий
- Метод не заработает на двухсокетных материнских платах (анлок применится только для одного процессора). Для подобных конфигураций можно использовать стандартный способ с встраиванием EFI-драйвера, либо новый метод анлока через S3TurboTool.
Не рекомендуется выполнять анлок по данной инструкции, если в дальнейшем планируется смена процессора на Xeon e5 16XX v3\v4 или e5 26XX v4, так как эти серии не поддерживают анлок.
Первоисточник информации — замечательное видео с канала Miyconst. Автор также сделал отличную презентацию, которую вы можете наблюдать чуть ниже. В конце презентации также доступны ссылки на уже готовые биосы для популярных плат.
Подготовка
- Убедитесь, что используете подходящий процессор (Haswell степпинга pre-QS и выше). Подробнее о степпингах здесь.
- Убедитесь, что система охлаждения выдержит увеличившуюся после применения хака температуру.
- Потребуется дамп биоса. Для большинства китайских плат снять и прошить его можно через FPT прямо в Windows, можно также использовать скаченный, но только если его работа уже проверена на конкретной плате.
В некоторых платах (в основном производства Jingsha) биос защищен от записи, поэтому FPT при попытке прошивки будет выдавать ошибку error 280. К счастью, решение довольно простое: в биосе идем в IntelRCSetup > PCH Configuration > Security Configuration и меняем значение пункта Bios Lock на Disabled. После сохранения настроек и перезагрузки защита от записи будет снята.
Необходимый софт
Нам понадобятся 3 программы (скачать их можно чуть ниже):
- MMtool_a5 для удаления микрокода 06F2 (не требуется, если вы скачали версию биос уже без микрокода)
- UEFITool для установки самого драйвера анлока в биос для отключения функций C3 и C6 Report, чтобы предотвратить зависания системы после анлока.
FFS-драйверы
Также нам понадобится FFS драйвер. В данном случае нужен именно FFS, а не EFI-драйвер, как в стандартной инструкции по анлоку. В архиве на данной странице — протестированные драйвера, сделанные Christian Peine, но желающие поэкспериментировать могут также попробовать FFS драйверы от MOF, ссылки на них находятся тут. Стоит помнить, что для экспериментов с другими драйверами лучше иметь под рукой программатор.
Вернемся к драйверам от Peine. Было выпущено достаточно много версий. Разобраться, что означает каждый конкретный файл можно по его названию. Например драйвер v3_payne_30_20.ffs имеет пониженное на 30mv напряжение на процессор и пониженное на 20mv напряжение на контроллер памяти.
Большинство процессоров серии Xeon e5 2600 v3 способно стабильно работать как минимум при -20mv, а зачастую и при гораздо меньшем напряжении. Однако, узнать точно, на сколько можно понизить напряжение для каждого конкретного процессора можно только с помощью тестирования. Для начала рекомендуется выбрать драйвер без заниженного напряжения или с небольшим занижением.
-
UEFITool_0.25.1_win32
UEFITool_0.25.1_win32
Размер файла: 7 MB Кол-во скачиваний: 8162mmtool_a5
MMtool
Размер файла: 5 MB Кол-во скачиваний: 5628AMIBCP 5-02
Amibcp ver. 5.02
Размер файла: 5 MB Кол-во скачиваний: 60027TU Drivers
Драйверы для анлока ТБ от Christian Peine
Размер файла: 62 KB Кол-во скачиваний: 2169
Удаляем микрокод 06F2
Если вы скачали биос уже без данного микрокода — пропустите этот пункт.
Для удаления мы будем использовать заранее подготовленную утилиту MMtool.
- Скачиваем и распаковываем архив с MMtool
- Запускаем программу, нажимаем «Load Image» и открываем наш ранее снятый\скаченный дамп
- Переходим на вкладку «Cpu Patch» и видим список микрокодов
- Смотрим на столбец «Cpu ID», нам нужен 06F2, выделяем его
- Ставим галочку напротив «Delete a patch data», затем жмём «Apply» и подтверждаем удаление
- Сохраняем наш биос кнопкой «Save imege as. »
Добавляем драйвер анлока
- Скачиваем и распаковываем архив с UEFITool
- Открываем в программе наш дамп
- Раскрываем список «Bios Region»
- Теперь в отобразившихся списках находим содержащий множество DXE-драйверов
- Выделяем самый последний в списке DXE драйвер, правый клик — «Insert After. »
- В открывшемся окне выбираем наш ранее скачанный FFS (не EFI) драйвер
- Сохраняем наш дамп биоса (File — Save as).
Отключаем CPU C3\C6 State
Сделать это нужно, чтобы предотвратить зависания системы.
- Скачиваем и распаковываем архив с AmiBCP
- Открываем в программе наш дамп
- Переходим на вкладку Setup Configuration
- Разворачиваем «Intel RCSetup», затем — «Advanced Power Management» и выделяем «CPU C State Control»
- Для параметров Cpu C3 Report и Cpu C6 Report устанавливаем значение «Disabled» в столбцах «Failsafe» и «Optimal»
- Сохраняемся (File — Save As) и закрываем AmiBCP.
Прошиваем мод-биос
Выполняем прошивку с помощью софта, которым снимали дамп. Если всё прошло удачно, сбрасываем биос на стандартные настройки.
Как правило, большинство китайских плат можно прошить одним из следующих способов:
- Прошивка из под Windows: скачиваем FPTW 9.1.10, открываем командную строку (от администратора) и прошиваем биос командой fptw64 -bios -f bios.bin. Где bios.bin (или ROM) — модифицированный биос, который нужно скопировать в папку с fpt. Само собой, в командной строке нужно сначала перейти в папку с fpt командой cd
- Традиционный метод — FPT с загрузочной флешки
- С помощью загрузочной флешки можно прошиться через Afudos
- Еще один вариант прошивки из под Windows — Afuwin
- Самый надежный способ — программатор.
Проверяем
Для проверки можно использовать программу HwInfo, которая показывает частоты для каждого ядра. Параллельно можно запустить какой-либо бенчмарк или стресс-тест (например cpu-z), чтобы нагрузить процессор.
Если всё прошло удачно — частота каждого ядра будет равна максимальному значению турбо-буста процессора.
Ремонт блока питания компьютера.
При ремонте блока питания компьютера нужно соблюдать меры безопасности, так как здесь присутствует высокое напряжение и существует опасность поражения электрическим током, взрыва и воспламенения компонентов. Для обеспечения безопасности нужно:
1. Подключать ремонтируемый блок питания через дополнительный предохранитель на ток не более 2А, плавкий или автоматический.
2. Кроме предохранителя первое включение после ремонтных операций производить через последовательно включенную лампу накаливания. Если лампа горит полным накалом, то это говорит о коротком замыкании в цепи.
3. После каждого включения блока питания в сеть необходимо разряжать входные высоковольтные электролитические конденсаторы. Во избежание искрения нужно разряжать конденсаторы на лампу накаливания 220 вольт. Вспышка лампы является индикатором разряда конденсаторов.
4. Не забывать и строго следить за тем, чтобы блок питания был отключен от сети при проведении ремонтных работ (кроме проведения измерений напряжений, токов, снятия осцилограмм).
5. Рядом не должно быть заземленных предметов, например водопроводных труб, батарей отопления и т.п., либо подключаться к сети нужно через разделительный трансформатор.
6. С высоковольтной частью блока питания нужно работать особенно осторожно и стараться не допускать ошибок.
Теперь непосредственно о ремонте и неисправностях.
Чаще всего встречаются следующие неисправности, которые достаточно легко обнаруживаются и устраняются:
3. Вылетают ключевые транзисторы в высоковольтной части, обычно из-за бросков напряжения в электросети. При этом обычно сгорает внутренний предохранитель. Определяется омметром. Замена на такие же или аналоги по току, напряжению и скорости переключения.
4. Пробивается входной высоковольтный выпрямитель. Выпрямитель бывают как в виде мостиков в одном корпусе, так и из отдельных диодов. Заменять можно на любые диоды, которые подходят по току и напряжению. Я ставил даже советские диоды и все работало. Определяется при помощи омметра.
5. Пробиваются выходные выпрямители 5, 12в. Обычно это сборки из двух диодов с тремя выводами на радиаторах, но бывают и дискретные диоды. Поскольку частота высокая, то обычные диоды не подходят. Нужно ставить диоды Шоттки, анологичные по току и напряжению. Определяется омметром.
Более сложные случаи неисправностей блоков питания я в этой статье описывать не стану, поскольку остаюсь при мнении, что в этих случаях ремонт экономически не оправдан.
Помогите как убрать защиту адаптера от замыкания — Форум самодельщиков
Пробные тесты
Прежде, чем приниматься за сооружение рабочей конструкции, следует протестировать все на «коленках», убедиться в стабильности работы шуруповерта под нагрузкой и отсутствии сильных перегревов в блоке питания.
Если все в порядке и блок выдает около 12 вольт на желтом(+) и черном(-) выводах, продолжаем. Если же напряжение на выходе отсутствует — ищем другой блок или ремонтируем этот, эта отдельная тема будет описана отдельно.
Отрезаем штекер от выхода блока и берем по 3-4 желтых и черных проводов, идущих из блока и соединяем их параллельно. Отрезая штекер, не забудьте о зеленом пусковом проводнике, он должен быть замкнут на черный. Мы получили источник 12 В с приличной нагрузочной способностью по току в 10-20 А, токи зависят от модели и мощности блока.
Я вытащил плату блока из корпуса и подцепил дополнительно мультиметр, для постоянного контроля напряжения
На мой взгляд, такое явление может возникать из-за того, что блоком питания и кнопкой шуруповерта управляют ШИМ-контроллеры, из-за помех по проводам питания, контроллеры как-то мешают друг другу. Пробуем решить эту проблему использованием импровизированного LC-фильтра.
Я собрал фильтр за 5 минут из того что было под рукой: 3 электролитических конденсатора по 1000 мкф на 16 вольт, неполярного конденсатора менее 1 мкф и намотал 20 витков медного провода диаметром 2 мм на ферритовое колечко от другого блока. Вот его схема:
А вот так он выглядит. Это чисто пробная версия, в дальнейшем эта конструкция перенесется в корпус батареи шуруповерта и будет выполнена аккуратнее.
Проверяем всю конструкцию: блок не уходит в защиту при любых положениях кнопки, великолепно! Теперь можно попробовать закрутить несколько саморезов — все пучечком. Чувствуется, что шуруповерт сможет закрутить и более крупные саморезы.
Ну чтож, теперь нужно убрать все сопли и кучи проводов, вытащить из корпуса батареи «сдохшие банки», заменив их на LC-фильтр и уже потестировать шуруповерт в более реальных условиях.
Блок питания для шуруповерта из компьютерного АТХ
Сборка рабочей конструкции
Так как шнур, соединяющий блок с шуруповертом, обладает определенным сопротивлением и индуктивностью, можно попробовать замкнуть перемычкой выводы катушки L1. Теоретически, это может повысить мощность на мизерное значение.
Со шнуром шуруповерт себя отлично чувствует, но если честно, мне он показался несколько слабоватым при торможении рукой. Но пробные закручивания саморезов развеяли мои сомнения: саморезы длинной 35 мм спокойно закручиваются в фанеру 20 мм. Это означает, что шуруповерт будет удовлетворять большинство потребностей в ремонте.
У блока я отрезал все выходные провода, оставив зеленый стартовый, его конец я припаял к общему проводнику платы, куда впаяны все черные. Лучше всего аккуратно выпаять все провода, но мой паяльник был слишком слабый для этого и пришлось обрезать. К общему контакту и +12 (куда впаяны желтые) припаял два коротких, жестких медных провода и соединил через клемник со шнуром к шурику.
На этом мы закончим данный обзор, желаемого мы добились — шуруповерт отлично работает от компьютерного блока питания. В дальнейшем планирую сделать для платы блока питания добротный фанерный корпус без щелей — тесты показали, радиаторы на плате совсем не греются и можно не беспокоиться о перегреве элементов в закрытом корпусе.
Как запустить блок питания без компьютера, старые и новые модели
Существует два способа, как запустить компьютерный блок питания без компьютера: напрямую и с использованием провода. По понятным причинам первый способ куда проще и понятнее, но работает он только для старых блоков питания стандарта AT. Новые же ATX блоки имеют контакт, который отвечает за их включение, и если его не задействовать, то включаться блок не будет.
Давайте же разберёмся, как его задействовать. Для этого вам понадобится небольшой проводок, проволока или что-то, чем можно соединить два контакта.
- Для начала нам нужно найти 20-pin разъём, в котором и содержится заветный контакт. Обычно он зелёного цвета и находится на четвёртой позиции слева, если считать от фиксатора крепления. Некоторые производители позволяют себе отойти от общепринятых норм и делают провода другого цвета, а потому в спорной ситуации опираться лучше на позицию контакта, а не на его цвет.
- После этого вам нужно заземлить ваш проводок, для этого подключите его к соседнему контакту справа. Если вы всё сделали правильно, блок питания должен тут же заработать.
- После остаётся лишь измерить напряжение и мощность.
Нормальной для ATX блоков считается мощность от 250 до 350 Вт. Напряжение же может быть разное 3, 5 и 15 В. Если у вас они не такие, то проблема явно в блоке питания.
Защита процессоров AMD от перегрева
Что будет, если остановился кулер на процессоре AMD или процессор включить вообще без кулера? Читайте о наших экспериментах с новейшими аппаратными системами защиты от перегрева на платах ASUSTeK и Soltek. Обжигающие результаты!
Высокое тепловыделение настольных процессоров компании AMD — популярная тема для разговоров. Кое-кто даже умудрился пожарить глазунью, использовав AMD Athlon XP 1500+ в качестве нагревательного прибора. Между тем «горячие парни» из AMD упорно настаивают на том, что их «камни» выделяют тепла не больше, чем Pentium 4 (подробнее об этом см. во врезке). Однако юзеру нет дела до абстрактных споров «кто горячее», ему важнее неприхотливость процессоров к теплоотводу и теплозащите. Впрочем, эта статья вовсе не о горячести процессоров, а о надежности защиты платформы AMD от перегрева процессора на примере пары свежих материнских плат популярных производителей.
Бытует мнение, что процессоры для Socket A требуют тщательного подхода к охлаждению. Если ошибиться с выбором кулера (скажем, взять подешевле и поменьше, не заглянув в список рекомендуемых самой AMD), — то вы рискуете столкнуться с зависаниями системы, потерей данных и прочим. Ведь неспроста же компания установила предельную рабочую температуру кристаллов своих процессоров в 90 градусов Цельсия (хотя эти процессоры сохраняют работоспособность даже при более высокой температуре; см., например, www.ferra.ru/online/supply/9668). Однако на самом деле современные процессоры AMD довольно неприхотливы к выбору кулера. Главное — поставить грамотный термоинтерфейс между ним и процессором (специальную термопрокладку или термопасту). О том, что может произойти, если этого не сделать, мы уже рассказывали.
Хорошо, положим и кулер вы выбрали «кульный», и пасту бочками «запастили» (бочками, кстати — тоже плохо), но вот собрали компьютер невнимательно, и какой-то провод или шлейф затормозил крыльчатку вентилятора на процессорном кулере (а то и просто забыли воткнуть питание кулера), кулер перегревается за считанные минуты (50–70 Вт от процессора не шутка), и… вы вынуждены идти в магазин за новым «камушком» (к сожалению, это не выдумки, а реальные факты из жизни грамотных сборщиков, а порой и профессионалов из крупных компьютерных фирм). Процессоры Intel Pentium 4 от такого казуса надежно защищены встроенной в них схемой под названием Thermal Monitor, а вот процессоры AMD пока нет. Другой не менее жизненный случай: поработал-поработал вентилятор на кулере и приказал долго жить. Сразу этого можно и не заметить, но за считанные минуты… — см. выше. А сколько бывает случаев некачественно надетого кулера, когда он прилегает к процессору с незаметным на глаз перекосом, но этого достаточно, чтобы потерялся термоконтакт со всей поверхностью «камушка» (что даже хуже, чем отсутствие термопасты). Кстати, я сам лично видел подобное в компьютерах, собранных известными московскими фирмами. Или вдруг, паче чаяния, вы включили компьютер, забыв поставить кулер на процессор (и такое случается), или разбираете компьютер, забыв его обесточить, сняли кулер, и тут вдруг питание случайно включилось… Думаю, последствия для процессоров AMD пояснять не нужно (для Pentium 4, к счастью, все значительно безопаснее).
В силу этого производители материнских плат уже давно озаботились тем, как защитить камни AMD, и вот уже более года почти все материнские платы имеют в своих BIOS Setup опцию защиты процессора от перегрева (ее можно активировать или дезактивировать по собственному желанию). Как правило, эта опция двухступенчатая: при превышении критической температуры (часто — задаваемой пользователем) компьютер оповещает об этом событии писком системного динамика, а если температура превысила другой (более высокий) порог, то компьютер (системная плата) сам обесточивается (по счастью, платы Socket A для блоков питания формата AT уже не выпускаются). Есть в BIOS Setup и опция предупреждения при остановке вентилятора (правда, она не всегда хорошо работает с некоторыми кулерами, и порой приходится ее отключать, чтобы не мешала).
У этого подхода к термозащите есть и достоинства, и существенные недостатки. Достоинства — простота реализации, дешевизна и возможность настройки порога пользователем. Как правило, платы для процессоров AMD сейчас имеют средства мониторинга (измерения) температуры CPU, поэтому достаточно лишь дописать небольшой код в BIOS, который сравнивал бы показания термодатчика с задаваемым порогом и выдавал импульс отключения питания. Теперь о недостатках. Во-первых, почти у всех современных и недавнего прошлого материнских плат для измерения температуры процессоров AMD используется внешний терморезистор (термистор), прижимаемый к чипу снизу (это лучший вариант) или расположенный на плате под процессором (то есть измеряющий фактически температуру платы в этом месте). В этих случаях точность измерения температуры самого процессорного ядра вызывает сомнения, да и оперативность отслеживания текущих значений температуры тоже не на лучшем уровне (процессор без кулера может разогреться до 150–200 градусов за несколько секунд, а датчик на плате этого даже не почувствует). Второй недостаток — программная, а не аппаратная реализация защиты, то есть для того, чтобы она сработала, необходимо, чтобы процессор все это время функционировал без сбоев и не зависал! А если он вдруг завис (либо перегрелся, либо его подвесила за уши очередная форточкина заморочка), защита, увы, не сработает — со всеми вытекающими последствиями.
Поэтому в нынешнем году (странно, почему не раньше?) некоторые производители стали оснащать свои материнские платы для Socket A специальной аппаратной защитой от перегрева процессора, свободной от двух вышеперечисленных недостатков. Принцип работы всех этих систем защиты в общем-то одинаковый: в материнскую плату добавлена микросхема, которая отслеживает температуру процессора по встроенному в Athlon XP термодиоду, и если показания превысят 85–95 °С, микросхема выдает аппаратный сигнал на выключение питания компьютера (напомню, что, согласно спецификации на процессоры, порогом работоспособности для Athlon XP и Duron является температура 90 градусов). Однако это все красиво в теории, а как системы термозащиты работают на практике, мы и решили выяснить — пока на примере двух плат: ASUS A7V333 и Soltek SL-75DRV5.