Super I/O

Super I/O (англ. Super Input/output; дословно: супер <контроллер> ввода-вывода) — название класса сопроцессоров, которые начали использоваться после 1980-х годов на материнских платах IBM PC-совместимых компьютеров путём сочетания функций многих контроллеров, сперва одной платой, устанавливаемой в слот расширения, а затем и одной микросхемой, тем самым достигая уменьшения числа микросхем контроллеров, и таким образом привели к снижению сложности и стоимости компьютера в целом. Super I/O объединяет интерфейсы различных низкоскоростных устройств.

Фактически, на рынке материнских плат массового сегмента предоставлена продукция всего четырёх фирм: ITE Tech, Nuvoton, Microchip Technology и Fintek. Производители брендовой продукции (IBM, HP, Dell, FSC) как правило используют проприетарные разработки схемотехники материнских плат и не публикуют спецификаций применяемых контроллеров.

Как правило, включает в себя следующие функции:

Super I/O также может включать в себя и другие интерфейсы, такие как игровой (MIDI или джойстик) или инфракрасный порты.

Изначально Super I/O связывались через шину ISA. Одновременно с развитием IBM PC-совместимых компьютеров происходило смещение Super I/O, сперва на шины VLB, затем стала использоваться шина PCI. Современные Super I/O используют шину LPC (интерфейс которой предоставляет южный мост материнской платы) и часто реализованы в составе чипсета.

Super I/O и схемы аппаратного мониторинга

Сводная таблица ИМС контроллеров[1]
НаименованиеКоличество
измеряемых
напряжений
Количество
датчиков
температуры
Количество
входов
контроля
вентиляторов
Количество
выходов
контроля
вентиляторов
IT8705F8/1333
IT8712F8/1333
W83627HF7/2332
W83637HF5/2333
W83697HF6/2222
VT82C686x5/12/12Нет
LPC47M15x8222
LPC47M1928222

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

Скорость вращения вентиляторов, применяемых для охлаждения блоков и отдельных частей материнской платы, обычно контролируется при помощи тахометров, встроенных в вентилятор — обычно для этого используется датчик Холла. Такой вентилятор отличается дополнительными (кроме двух питания) проводами, одним (устанавливаемый в корпус, блок питания, на охлаждение радиаторов микросхем чипсепа материнской платы/видеокарты) или двумя (процессорный).

Для мониторинга температуры используется три типа датчиков: терморезисторы, транзисторы (например, 2N3904) и датчики интегрированные в процессор.

Логически аппаратный мониторинг выглядит как набор регистров, значение которых изменяется при изменении состояния на входах.

Super I/O производства Intel

Примером современного Super I/O может служить микросхема Intel 631xESB/632xESB, обеспечивающая следующие функции[2]:

  1. Обеспечивает реализацию интерфейса ESI (англ. Enterprise South Bridge Interface, ESI) и порта PCI Express, обеспечивающим 8-кратный поток передачи к Memory Controller Hub (MCH)
  2. Обеспечивает совместимость с версией 1.0a спецификации шины PCI Express
  3. Обеспечивает совместимость с приложением к протоколу спецификации версии 2.0a шины PCI и приложению по электрической и механической спецификации шины PCI
  4. Обеспечивает совместимость с версией 2.3 спецификации шины PCI в части поддержки работы на частоте 33 МГц (поддержка до семи пар Req/Gnt)
  5. Обеспечивает логическую поддержку режимов потребления питания ACPI
  6. Обеспечивает реализацию контроллера Enhanced DMA, контроллера прерываний и функции часов реального времени
  7. Содержит интегрированный контроллер SATA с независимыми DMA-операциями на шести портах и поддержку AHCI
  8. Содержит интегрированный контроллер IDE, обеспечивающий работу режимов Ultra ATA100/66/33
  9. Содержит интегрированный контроллер интерфейса USB с поддержкой восьми портов; содержит четыре интегрированных контроллера UHCI; одержит один интегрированный высокоскоростной EHCI-контроллер, обеспечивающий работу в режиме USB 2.0
  10. Содержит сдвоенный гигабитный MAC обеспечивающий работу в соответствии со спецификациями IEEE 802.3 с поддержкой интерфейса SerDes[3]/Kumeran для двух PHY-компонентов
  11. Обеспечивает работу PICMG-совместимого гигабитного Ethernet
  12. Содержит интегрированный контроллер платы с базовой прошивкой ПЗУ, обеспечивающий расширяемость через внешнюю флеш-память и ОЗУ
  13. Обеспечивает совместимость с версией 2.0 SMBus с дополнительной поддержкой I2C-устройств
  14. Содержит интегрированный аудиоинтерфейс (AC’97 и Intel High Definition Audio), а также спецификацию модема AC’97
  15. Имеет интерфейс LPC
  16. Обеспечивает поддержку интерфейса Firmware Hub (FWH)
  17. Обеспечивает дополнительные функции, например: управляет процессами во время перезагрузки и если во время первоначального старта центральным процессором не начинается выполнение инструкций, перезапускает компьютер; или переводит компьютер в режим останова в случае срабатывания защиты при открытии корпуса системного блока

Super I/O производства Integrated Technology Express Inc (ITE)

Известны следующие ИМС <контроллеров Super I/O> производства Integrated Technology Express Inc:

В качестве примера типового контроллера рассмотрим IT8705F/AF

IT8705 – высокоинтегрированный суперконтроллер ввода/вывода на основе интерфейса LPC. Контроллер обеспечивает функциональность на уровне наиболее часто используемых наследуемых функций обычного суперконтроллер ввода/вывода плюс инновации в контроле окружающей среды, такие как функция аппаратного мониторинга, регулирование скорости вращения вентилятора и фирменную разработку ITE — «SmartGuardian». Интерфейс LPC контроллера соответствует Спецификации интерфейса LPC 1.0 от 29 сентября 1997 года, публикуемой фирмой Intel[11]. IT8705F отвечает требованиям руководства «Microsoft PC98 & PC99 System Design Guide», сам контроллер является ACPI-совместимым устройством.
Функции расширенного аппаратного мониторинга предоставлены тремя входами (используется 8-битное АЦП) с возможностью подключения в качестве источника аналогового сигнала (измерение температуры) внешних термисторов, температурного диода или транзистора подключенного в качестве диода (например, 2N3904).
Обеспечиваемая контроллером фирменная инновация SmartGuardian (направленная на уменьшения общего шума работающей системы и снижения потребляемой электроэнергии) представляет собой интеллектуальное включение/отключение вентилятора и управление скоростью его вращения.
Также доступны средства ISO 7816-совместимого считывателя смарт-карт и согласно спецификации Personal Computer Smart Card (PC/SC) Working Group.
Контроллер также имеет девять интегрированных логических устройств, благодаря чему представляет собой контроллер окружающей среды (управляя тремя вентиляторами). Каждое из девяти логических устройств может быть индивидуально включено или отключено с помощью регистров конфигурации программного обеспечения. Контроллер использует энергоэффективную схему для снижения энергопотребления. После того, как логическое устройство отключено, его цепи входов блокируются, выходы переключаются в третье состояние (высокоимпедансное состояние, Z-состояние) и отключаются от тактового генератора.
Контроллер окружающей среды контролирует температуру, восемь напряжений питания (включая напряжение батареи VBAT для питания CMOS-памяти содержащего данные конфигурирования BIOS и RTC) и скорость вращения вентилятора.
Один контроллер скорости вращения вентилятора отвечает за управление скоростью вращения трёх вентиляторов используя три выходных контакта управляемых 128-шаговыми импульсами (используется широтно-импульсная модуляция) и контролирует входы от тахометров трех вентиляторов.
Также контролер включает в себя:
  • один высокопроизводительный КНГМД 2,88 МБ дискет (с сепаратором цифровых данных) поддерживающим два 360 к / 720 к / 1,2 МБ / 1,44 МБ / 2,88 МБ дисковода;
  • один многорежимный высокопроизводительный параллельный порт IEEE 1284, который работает как двунаправленный стандартный параллельный порт (SPP), улучшенный параллельный порт (Enhanced Parallel Port, EPP) версий 1.7 и 1.9, или порт с расширенными возможностями (ECP);
  • два, совместимых со стандартными 16C550, расширенных УАПП — для осуществления асинхронной связи; также осуществляется поддержка SIR и одного ИК-пульта дистанционного управления (пульт от телевизора);
  • один MIDI порт работающий в режим совместимом с MPU-401 UART; один игровой порт со встроенным счетверённым таймером 558 и буферными микросхемами для поддержки прямого подключения двух джойстиков; шесть портов (44 выводов GPIO);
  • осуществляется организация интерфейса с флэш-ПЗУ объёмом до восьми МБ (сигналами шины адреса FA [0:19], шины данных FD [0:7]); существует поддержка трёх управляющих сигналов — FCS#, FWE# и FRD#;
  • осуществляется управление свечением и „миганием“ светодиода, индицирующим режим энергосбережения компьютера (англ. Power LED Blinking Control);
  • управляет звуковой сигнализацией при сбое или отказе компьютера;
  • кроме того, для мониторинга состояния системы и реакция на обнаруженные состояния соответственно предусмотрена технология SmartGuardian; вариант IT8705AF дополнительно позволяет контролировать вскрытие корпуса (аппаратная система обнаружения вторжений).

Контроллер требует одного входа тактового генератора с частотой 48/24 МГц и работает от одного источника питания +5 В. Выпускается в пластиковом 128-выводном корпусе типа PQFP.

Назначение выводов и сигналы контроллера

Назначение выводов ИМС контроллера (сводная таблица)
PinSignalPinSignalPinSignalPinSignal
1DTR2#/JP433FA17/GP5165HDSEL#97VIN1
2RTS2#/JP634FRD#/GP5266WGATE#98VIN0
3DSR2#35VCC67GNDD99VCC
4VCC36LDRQ#68RDATA#100SLCT
5SOUT237SERIRQ69TRK0#101PE
6SIN238LAD070INDEX#102BUSY
7FD0/GP1039LAD171WPT#103ACK#
8FD1/GP1140LAD272DSKCHG#104SLIN#
9FD2/GP1241LAD373FAN_TAC1/GP55105INIT#
10FD3/GP1342PCICLK74FAN_TAC2/GP56106ERR#
11FD4/IRQIN0/GP1443GNDD75FAN_TAC3/FA18/GP57107AFD#
12FD5/IRQIN1/GP1544CLKIN76VBAT108STB#
13FD6/IRQIN2/GP1645LRESET#77VCCH109PD0
14FD7/IRQIN3/GP1746LFRAME#78FAN_CTL1/GP60110PD1
15GNDD47FCS#/SCIO/GP5379FAN_CTL2/GP61111PD2
16FA0/VID_I0/GP2048FWE#/GP5480FAN_CTL3/GP62/SCPFET#112PD3
17FA1/VID_I1/GP2149JSACX/GP40/FAN_TAC1S81PME#/GP63/SCPRES#113PD4
18FA2/VID_I2/GP2250JSACY/GP41/FAN_TAC2S82IRTX/MIDI_OUT/GP64114PD5
19FA3/VID_I3/GP2351JSAB1/GP42/FAN_TAC3S83IRRX/MIDI_IN/GP65115PD6
20FA4/VID_I4/GP2452JSAB2/GP43/FAN_CTL3S84CIRTX/GP66116PD7
21FA5/VID_O0/GP2553JSBCX/GP4485CIRRX/GP67117GNDD
22FA6/VID_O1/GP2654JSBCY/GP4586GNDA118DCD1#
23FA7/VID_O2/GP2755JSBB1/GP46/FAN_CTL1S87TMPIN3/COPEN#119RI1#
24FA8/VID_O3/GP3056JSBB2/GP47/FAN_CTL2S88TMPIN2120CTS1#
25FA9/VID_O4/GP3157DENSEL#89TMPIN1121DTR1#/JP1
26FA10/VID_O5/GP3258MTRA#90VREF122RTS1#/JP2
27FA11/VID_I5/GP3359MTRB#/SCRST91VIN7/TMPIN3123DSR1#
28FA12/GP3460DRVA#92VIN6124SOUT1/JP3
29FA13/GP3561DRVB#/SCCLK/FA1993VIN5125SIN1
30FA14/GP3662WDATA#94VIN4126DCD2#
31FA15/GP3763DIR#95VIN3127RI2#
32FA16/GP5064STEP#96VIN2128CTS2#
Назначение выводов ИМС контроллера (по группам)
Сигналы группы Питание
№ выводаНаименование
сигнала
Атрибут
группы[# 1]
ПитаниеОписание
4, 35, 99VCCPWR +5V питания (англ. Power Supply)
76VBATPWR +3.3 В батареи
77VCCHPWR +5 V VCC вспомогательное питание англ. Help Supply).
15, 43, 67, 117GNDDGND Земля цифровых сигналов
86GNDAGND Земля аналоговых сигналов
Сигналы группы Интерфейс шины LPC
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы аппаратного мониторинга
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы управления вентиляторами
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы ИК порта
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы игрового порта
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы первого последовательного коммуникационного порта
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы второго последовательного коммуникационного порта
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы параллельного коммуникационного порта
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы КНГМД
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Сигналы интерфейса флеш-ПЗУ
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы группы Прочие сигналы
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
44CLKINDIVCCВход тактовой частоты, 24 или 48 МГц
Сигналы первой группы Ввод/вывод общего назначения (англ. General Purpose I/O, GPIO)
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы второй группы Ввод/вывод общего назначения
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы третьей группы Ввод/вывод общего назначения
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы четвёртой группы Ввод/вывод общего назначения
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы пятой группы Ввод/вывод общего назначения
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Сигналы шестой группы Ввод/вывод общего назначения[# 2]
№ выводаНаименование
сигнала
Атрибут
группы
ПитаниеОписание
Примечания
  1. Атрибут группы:
    • DO: Digital Output — цифровой выходной сигнал
    • DO8: 8mA Digital output buffer — цифровой выходной буфер на ток 8 мА
    • DO16: 16mA Digital output buffer — цифровой выходной буфер на ток 16 мА
    • DO40: 48mA Digital output buffer — цифровой выходной буфер на ток 48 мА
    • DOD40: 48mA Digital Open-Drain output buffer — цифровой выходной буфер с открытым истоком на ток 48 мА
    • DIOD8: 8mA Digital Open-Drain Input/Output buffer — цифровой входной-выходной буфер с открытым истоком на ток 8 мА
    • DIO8: 8mA Digital Input/Output buffer — цифровой входной-выходной буфер на ток 8 мА
    • DIO24: 24mA Digital Input/Output buffer — цифровой входной/выходной буфер на ток 24 мА
    • DI: Digital Input — цифровой вход
    • AI: Analog Input — аналоговой вход
    • AO: Analog Output — аналоговой выход
  2. Регистры GPIO запитываются VCC, не VCCH!
Рекомендуемой назначение (подключение) выводов
№ выводаНаименование
сигнала
Рекомендуемое назначение
98VIN02 вольта для сигнала ЦП VCORE1.
97VIN12 вольта для сигнала ЦП VCORE2.
96VIN23,3 вольта для компьютера.
95VIN35 вольт для компьютера.
94VIN4+12 вольт для компьютера.
93VIN5-12 вольт для компьютера.
92VIN6-5 вольт для компьютера.
91VIN75 вольт для питания в дежурном (Suspend) режиме.

Конфигурационные регистры

Таблица адресов девяти логических устройств контроллера
Логическое устройствоАдресПримечание
LDN=0
КНГМД
Базовый адрес + (2 - 5) и + 7
LDN=1
Первый последовательный
коммуникационный порт
Базовый адрес + (0 -7)
LDN=2
Второй последовательный
коммуникационный порт
Базовый адрес1 + (0 -7)
LDN=3
Параллельный порт
Base1 + (0 -3)
Базовый адрес1 + (0 -7)
Базовый адрес1 + (0 -3) и Базовый адрес2 + (0 -3)
Базовый адрес1 + (0 -7) и Базовый адрес2 + (0 -3)
Базовый адрес3
SPP
SPP+EPP
SPP+ECP
SPP+EPP+ECP
POST Data Port
LDN=4
Контроллер окружающей среды
Базовый адрес1 + (0 -7)
Базовый адрес2 + (0 -3)
Контроллер окружающей среды
Сигнал события управления энергопотреблением
(англ. Power Management Event, PME#)
LDN=5
Ввод/вывод общего назначения
LDN=6
Игровой порт
Базовый адрес + (0 -1)
LDN=7
ИК порт
Базовый адрес + (0 -7)
LDN=8
MIDI порт
Базовый адрес + (0 -1)
Глобальный конфигурационный регистр

Контроллер окружающей среды

Контроллер окружающей среды (англ. Environment Controller, EC), встроенный в IT8705F, включает в себя восемь входов для контроля напряжения питания, три входа для датчиков температуры, три входа для тахометров вентиляторов и три набора улучшенных контроллеров вентиляторов.[12]

IT8705F содержит 8-битный АЦП, ответственный за контроль напряжения и температуры. АЦП преобразует аналоговые сигнала на входе, начиная от 0 В и до 4,096 В, в 8-битные цифровые байты. Благодаря наличию дополнительных внешних компонентов аналоговые входы могут контролировать разные диапазоны, в дополнение к фиксированному входному диапазону от 0 В до 4,096 В. Входы датчиков температуры могут быть преобразованы в 8-разрядные цифровые байты и контролировать температуру с термисторов или термодиода. Встроенная ПЗУ обеспечивает регулировку нелинейных характеристики термисторов.

Входы тахометра вентилятора являются цифровыми входами с диапазоном от 0 до 5 В и используются при измерениях периодов импульсов с тахометра вентилятора. FAN_TAC1 и FAN_TAC2 оснащены программируемыми делителем и могут быть использованы для измерения различных диапазонов скорости вращения вентилятора. FAN_TAC3 снабжен фиксированным делителем и может быть использован только в диапазоне по умолчанию.

Контроллер окружающей среды в IT8705F предоставляет программистам несколько внутренних регистров и генератор прерываний для контроля окружающей среды и управления вентиляторами.

Доступ программиста к контроллеру окружающей среды осуществляется по адресам двух регистров:

  1. Регистр адреса, адрес: Базовый адрес+05h
  2. Регистр данных, адрес: Базовый адрес+06h

Базовый адрес определяется конфигурационным регистром логического устройства контроллера окружающей среды — LDN = 04h, индекс регистров = 60h, 61h.

Super I/O производства Winbond Electronic Corp.

Super I/O контроллер Winbond W83977EF, установленный на материнской плате

Super I/O производства Standard Microsystems Corporation (SMSC)

Super I/O контроллер SMSC, установленный на материнской плате IBM
Super I/O контроллер SMSC, установленный на материнской плате ноутбука Samsung

См. также

Примечания

  1. Системы контроля здоровья PC (Hardware monitor / PC Health)
  2. Intel 631xESB/632xESB I/O Controller Hub. Datasheet
  3. Serializer/Deserializer (SerDes) Solutions Архивировано 23 февраля 2010 года.
  4. Simple Low Pin Count Input / Output (Simple LPC I/O). Preliminary Specification V0.1. Copyright © 2001 ITE, Inc.
  5. Super - Low Pin Count Input / Output (LPC I/O). Preliminary Specification V0.5. Copyright © 2004 ITE, Inc.
  6. Simple Low Pin Count Input / Output (Simple LPC I/O). Preliminary Specification V0.4. Copyright © 2003 ITE, Inc.
  7. Special General Purpose I/O. Preliminary Specification V0.1. Copyright © 2000 ITE, Inc.
  8. Application Circuit V0.2. SCHEMATIC REVISION IT-8711-CG-S01 VER 0.2. June 21, 2001
  9. Environment Control – Low Pin Count Input / Output (EC - LPC I/O). Preliminary Specification V0.81. Copyright © 2004 ITE, Inc.
  10. APPLICATION CIRCUIT V0.3 SCHEMATIC REVISION IT-8871-CG-4J-S01. VER0.3 Oct 24, 2000
  11. Intel Low Pin Count (LPC) Interface Specification Revision 1.1 August 2002 (англ.)
  12. Е. Бурькова, А. Боровский. Микропроцессорный комплекс SDK-1.1 Архитектура и программирование. — Оренбург: ГОУ ОГУ, 2009. — 107 с.

Литература

По ИМС ITE
  • IT8705F/IT8705AF Simple Low Pin Count Input/Output (Simple LPC I/O) Preliminary Specification V0.4.
  • IT8705F Preliminary Environment Controller (EC) Programming Guide V0.3.
  • Errata V0.1 for IT8705F/IT8705AF V0.4. Document Number: ITPM-ER01-IT8705.
  • IT8705F Application Circuit. Document Number: IT-8705-CG-S01 V2.0.
  • IT8712F Environment Control – Low Pin Count Input/Output (EC-LPC I/O) Preliminary Specification V0.9.1.
  • IT8712F Preliminary Environment Controller (EC) Programming Guide V0.2.
  • IT8718F Environment Control – Low Pin Count Input/Output (EC-LPC I/O) Preliminary Specification V0.3.
  • Термальная угроза: мифы и реальность №1
  • Укрощение кулеров
По ИМС Windond
  • W83627HF/F, W83627HG/G Winbond LPC I/O. Revision: A1.
  • Winbond LPC I/O W83627THF. Revision 1.0.
  • Winbond LPC I/O W83697HF, W83697HG. Revision: A1.
  • W83781D Winbond H/W Monitoring IC.
По ИМС SMSC
  • LPC47M10x Preliminary. 100 Pin Enhanced Super I/O Controller with LPC Interface for Consumer Applications.
  • SMSC LPC47M10x Reference Design ASSY 6097 Rev. A1. Document Number: 6097.
Другие материалы
  • VIA VT82C686A South Bridge Datasheet. Revision 1.54
  • VIA VT82C686B South Bridge Datasheet. Revision 1.71
  • Advanced Configuration and Power Interface Specification. Hewlett-Packard Corporation, Intel Corporation, Microsoft Corporation, Phoenix Technologies Ltd., Toshiba Corporation. Revision 3.0.
  • Intel “LPC Interface Specification Rev. 1.0” (Sept. 29, 1997)

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.