Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

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


Микросхемы мониторинга Super-IO/Multi-IO.

Микросхемы мониторинга Super-IO/Multi-IO

В настоящее время выпускается достаточно широкая номенклатура специальных микросхем мониторинга, которые обеспечивают все большую точность и новые возможности с выпуском каждой новой модификации. Чипсеты Intel обычно использовали внешние микросхемы мониторинга, например, LM78 и LM79 фирмы National Semiconductor, или 83781D/W83782D/W83783S/W83784R фирмы Winbond). 
Очень часто на абсолютном большинстве плат функции мониторинга исполняет микросхема Super-IO/Multi-IO (рис. 1), которая одновременно содержит ряд "медленных" контроллеров периферийных устройств (последовательный, параллельный порты, контроллер ГМД, игровой порт и др.) и схемы управления вентиляторами, АЦП и другое оборудование для мониторинга. Поэтому она и называется мультиконтроллером (к этой же микросхеме подключается и BIOS EEPROM). Широко используются микросхемы Super-IO/Multi-IO Windond W83627THF, W83627EHG; Fintek F71882FG, ITE8705F, IT8712F.

Некоторые фирмы (типа ASUS) иногда используют специальные заказные чипы мониторинга, которые имеют соответствующую маркировку и ориентированы под конкретные системные платы (например, энергетический процессор EPU). Специальный энергетический процессор от ASUS автоматически определяет степень загрузки системы и оптимизирует ее энергопотребление в режиме реального времени. Это способствует уменьшению шума от вентиляторов и долгому сроку службы компонентов компьютера. Этот первый в мире энергетический процессор создан для экономии потребления энергии и задействуется с помощью переключателя на плате или с помощью утилиты AI Suite II. Он оптимизирует энергопотребление, выполняя мониторинг загрузки в режиме реального времени и регулируя параметры электропитания компонентов платы согласно текущим потребностям. Помимо этого, благодаря EPU повышается долговечность системных компонентов и снижается уровень генерируемого компьютером шума.


Рис. 1. Блок-схема микросхемы мониторинга Super-IO/Multi-IO

 

На обычных системных платах ПК часто встречается микросхема IT8712F (рис. 1). Она содержит 3 аналоговых входа для термодатчиков, 8 входов измерения напряжений, вход измерения напряжения батарейки (Vbat) для CMOS памяти, 5 входов с тахометров вентиляторов; встроенный ШИМ-контроллер для управления скоростью вращения вентиляторов с 5-ю программируемыми выходами. Эта микросхема автоматически определяет аварийные ситуации с остановкой вентиляторов и обеспечивает выдачу служебного звукового сигнала об этом в системный динамик. Эта же микросхема еще содержит в себе два последовательных UART-порта, 1 параллельный порт, контроллер мыши и клавиатуры, а также контроллер floppy-дисковода, GAME-порт и сторожевой таймер (подключена микросхема через шину LPC, на которую также подключена микросхема BIOS ROM).

Рис. 2. Фрагмент принципиальной схемы системной платы ПК (IT8712)

Итак, современные персональные компьютеры имеют развитую подсистему оптимизации энергопотребления и контроля жизненно важных параметров системы. Сегодня практически все материнские платы поддерживают так называемый аппаратный мониторинг, основные функции которого следующие:

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

Как уже отмечалось выше, для всех измеряемых параметров обеспечивается возможность считывания их значений посредством но-доступных процессору регистров (это использует BIOS, а также диагностические утилиты, запускаемые в сеансе ОС). При выходе параметров за установленные пределы, подсистема мониторинга сигнализирует об аварийной ситуации (обычно для этого используется прерывание SMI - System Management Interrupt).

Для измерения температуры используются термодатчики, расположенные на плате, а также в кристалле процессора и микросхем чипсета. Результатом работы термодатчиков являются аналоговые величины (значения напряжений), которые подаются на АЦП. Результатом работы АЦП является соответствующий аналоговой величине цифровой код, пропорциональный значению температуры, который доступен для считывания через программно-доступные регистры. Значения напряжений питания измеряются по такой же схеме (с учетом особенностей микросхемы мониторинга). Для измерения скорости вращения вентиляторов, используются датчики, генерирующие импульсы при каждом обороте вентилятора с последующим цифровым измерением длительности паузы между двумя импульсами. Результат также считывается посредством программно доступных регистров.

Для программного включения и выключения вентиляторов, их подключают к напряжению питания +12V через транзисторные ключи, открытием и закрытием которых управляют программно-доступные регистры. Для обеспечения плавного управления скоростью вентиляторов, используется широтно-импульсная модуляция (ШИМ). При этом указанные транзисторные ключи открываются и закрываются с определенной частотой. Изменяя соотношение длительностей открытого и закрытого состояния ключей, можно управлять средним значением напряжения на двигателе вентилятора и, следовательно, скоростью его вращения. Код для управления скоростью записывает программа в доступные ей регистры (генерация периодического сигнала ШИМ выполняется аппаратно).

В отличие от архитектуры устройств материнской платы, архитектура подсистемы аппаратного мониторинга не до конца стандартизована, поэтому адреса регистров и назначение битов в регистрах этой подсистемы различны для различных материнских плат (таких вариантов более сотни и не все из них хорошо документированы). Микросхема мониторинга отвечает и за ряд интерфейсов на материнской плате, аппаратный мониторинг не является ее единственной, или основной функцией (как уже отмечалось выше, обычно она содержит контроллер гибких дисков, два последовательных порта, параллельный порт, контроллер аппаратного мониторинга, блок многофункционального ввода-вывода, игровой порт, порт для инфракрасного интерфейса и порт MIDI).

Каждому из перечисленных устройств соответствует свой номер LDN (Logical Device Number) и блок конфигурационных регистров, посредством которого устройству назначаются системные ресурсы (адреса портов и памяти, номер прерывания, номер канала DMA). Например, для подсистемы аппаратного мониторинга LDN=4. Для доступа к конфигурационным регистрам используются порты с адресами 002Eh, 002Fh, работающие как порт индекса конфигурации и порт данных конфигурации. При обращении к регистру, в порт индекса записывается его номер, затем через порт данных считывается или записывается значение регистра.

Каждое логическое устройство, в том числе и контроллер аппаратного мониторинга, также имеет набор регистров, обеспечивающих выполнение "прямых обязанностей" данного устройства (для контроллера аппаратного мониторинга такими функциями являются считывание значений температур, напряжений, скоростей вращения вентиляторов, а также управления вентиляторами). Здесь также используются порты индекса и данных, но их адреса программно настраиваемые (посредством выше упомянутых конфигурационных регистров).

Например, порт индекса контроллера аппаратного мониторинга находится по адресу X+5, порт данных - по адресу X+6. Значение базового адреса X задается посредством конфигурационных регистров. В большинстве платформ (но не во всех) порт индекса расположен по адресу 0295h, порт данных - по адресу 0296h. Контроллер мониторинга содержит 256 регистров, адресуемых по выше описанной индексной схеме, но пока не все из возможных 256 адресов регистров используются (архитектура конфигурационных регистров микросхемы мониторинга Super-IO/Multi-IO и принцип ее разделения на логические устройства, во многом сходны с принципами построения устройств ISA PnP).

Как было сказано выше, архитектура указанных ресурсов не стандартизована, и различается у плат различных моделей. Даже между платами, использующими одинаковые контроллеры мониторинга, могут быть программно-видимые различия, обусловленные различным включением измерительных и управляющих цепей контроллера. Поэтому, для создания универсальной программы потребуется обширная база данных, содержащая процедуры поддержки под каждую модель материнской платы. Теоретически, обеспечить универсальный протокол доступа к подсистеме аппаратного мониторинга может интерфейс ACPI, но на большинстве платформ он реализован достаточно ограниченно, что препятствует его эффективному использованию для решения рассматриваемых задач.

Мониторинг напряжений.

Стабильность соблюдения номиналов напряжений, питающих узлы системной платы - главное условие и залог стабильной работы всего ПК (контроль рабочих напряжений питания обязателен для всех систем мониторинга). Использование маломощных или некачественных блоков питания приводит обычно к тому, что под нагрузкой они выдают номиналы питания, значительно меньше требуемых, а это часто и приводит к зависанию ПК. "Просадка" напряжений более чем на 0,2-0,3 В может существенно сказаться на стабильности работы ПК. Номиналы электропитания заводятся на входы напряжений микросхемы Super IO/Multi-IO, как правило, рабочий диапазон встроенного в нее АЦП составляет 0 - 4,096 В, а шаг квантования - обычно 16 МВ (4,096 В / 256 = 16 МВ). Естественно, что для обработки напряжений 5 и 12 В необходимы резисторные делители (рис. 3, 4), номиналы элементов которых зависят от контролируемых уровней напряжений.

Для корректного определения значений от датчиков требуется согласование входных сопротивлений микросхемы мониторинга в зависимости от выходных сопротивлений датчиков с помощью дополнительных последовательных резисторов и схем-повторителей сигнала. Это позволяет достичь максимального соотношения сигнал/шум. Номиналы согласующих резисторов влияют на точность измерения значений напряжений (часто именно из-за такой неправильной схемы включения, пользователь и получает искаженные данные мониторинга). 

Рис. 3. Входы напряжений микросхемы Super-IO/Multi-IO


Рис. 4. Фрагмент принципиальной схемы системной платы ПК
Мониторинг температур.

Обычно в ПК в первую очередь следят за показаниями датчиков температуры процессора (CPU) и графического процессора. Перегрев процессора или срабатывание защиты от перегрева чаще всего вызывает нестабильность работы ПК, в результате чего компьютер самопроизвольно "выключается". Практически почти все ноутбуки "страдают" от перегрева графического чипа (в результате перегрева графический чип со временем выходит из строя, что влечет за собой ремонт ноутбука).

В кристалл чипов в качестве датчиков температуры встраиваются термодиоды, которые формируют аналоговый сигнал пропорциональный температуре кристалла (рис. 5, конт. AL1, AK1). В многоядерных процессорах каждое ядро имеет свой термодиодный датчик температуры. Графические чипы также имеют встроенный термодиод. Аналоговый код температуры поступает на микросхему мониторинга, преобразуется в цифровой код, который записывается в регистр. С заданной дискретностью программным путем регистр опрашивается на предмет изменения температуры (но такая система, естественно, имеет задержку в реагировании). При резком "скачке" температуры (например, из-за отказа вентилятора) данная система не успеет среагировать и процессор "погибнет".

Поэтому в процессорах предусмотрена аналоговая встроенная система защиты от перегрева. Для этого в CPU Intel используется сигнал THERMTRIP# (рис. 5, конт. М2), он становится активным, когда температура кристалла превысит TCASEMAX на 20 градусов. По сигналу THERMTRIP# аппаратно формируются сигналы управления, запрещающие формирование напряжения питания ядра процессора (VCC), работу кнопки включения питания (пока температура кристалла не придет в норму). 

Рис. 5. Фрагмент принципиальной схемы системной платы ПК.

Начиная с процессоров Pentium 4 были введены схемы, формирующие новый сигнал PROCHOT#, который позволяет контролировать достижение максимальной рабочей температуры кристаллом процессора. Это значение температуры откалибровано для каждого блока процессора отдельно в зависимости от их мощности рассеивания и загрузки. Такая дополнительная аналоговая система контроля с отдельным датчиком названа Thermal Monitor, которая действует постоянно, а не с заданной дискретностью. Когда выдается сигнал PROCHOT# (рис. 5, конт. AL2), Thermal Monitor задействует механизм модуляции тактовой частоты (понижает тактовую частоту, а заодно и питание ядра процессора): в линию тактирования вносятся холостые такты, когда тактовые импульсы не подаются, то есть процессор простаивает - температура его понижается (это позволяет остудить CPU при большой нагрузке за счет потери производительности). Пороговую температуру, при которой запускается и выключается Thermal Monitor, как правило, можно задать в BIOS CMOS Setup.

Таким образом, все современные процессоры и материнские платы поддерживают эффективные механизмы защиты процессора от перегрева, что дает гарантию их нормальной работы. Процессоры Intel (начиная от Pentium 4) и AMD (начиная от Athlon 64) поддерживают двухступенчатую температурную защиту. При достижении первого порогового значения происходит замедление процессора путем снижения тактовой частоты (точнее говоря, выполняется периодический пропуск определенного количества тактов при неизменной длительности такта). Второй порог достигается, если замедление процессора не привело к его остыванию, и он нагрелся до температуры, при которой существует опасность физического разрушения. В этом случае выполняется аварийное выключение питания (эта операция не может быть блокирована программно). Значения температур для первого и второго температурных порогов зависят от модели процессора. Например, для процессоров класса Intel Pentium 4 с ядром Prescott типовые значения порогов, соответственно 70 и 90оC (уточнить эту информацию, можно используя Data Sheet на конкретный процессор).

Компоненты системной платы, например, модули памяти, имеющие датчики температуры (см. рис. 6), при перегреве могут быть причиной подачи сигнала PROCHOT# (на рис. 5, конт. AL2 процессора) и вызвать запуск системы Thermal Monitor (благодаря чему процессор реже обращается к памяти и она остывает).

Рис. 6. Фрагмент принципиальной схемы системной платы ПК


Лицензия