Введение

Простая двухпроводная шина для материнских плат

Системная управляющая шина (сокращенно SMBus или SMB) — это однопроводная простая двухпроводная шина, предназначенная для организации упрощенной связи. Чаще всего она встречается в чипсетах компьютерных материнских плат для связи с источником питания с целью передачи команд включения/выключения. Конкретная функциональность и аппаратные интерфейсы могут различаться у разных производителей. Она является производной от I²C и используется для связи с устройствами с низкой пропускной способностью на материнской плате, особенно с чипами, связанными с питанием, такими как подсистема перезаряжаемых батарей ноутбука (см. Smart Battery System и ACPI). Другие устройства могут включать внешние управляющие хосты, датчики температуры, датчики вращения вентилятора или напряжения, датчики открытия крышки, генераторы тактовой частоты и RGB-подсветку. Платы расширения PCI могут подключаться к сегменту SMBus. Устройство может предоставлять информацию об изготовителе, указывать модель/номер детали, сохранять свое состояние перед переходом в режим ожидания, сообщать о различных типах ошибок, принимать управляющие параметры, возвращать статус через SMBus и опрашивать регистры чипсета. SMBus обычно не настраивается и не доступна для пользователя. Хотя устройства SMBus обычно не могут идентифицировать свою функциональность, новая коалиция PMBus расширила SMBus, включив в нее соглашения, позволяющие это делать. SMBus была определена компаниями Intel и Duracell в 1994 году. Она передает тактовые сигналы, данные и инструкции и основана на протоколе последовательной шины I²C, разработанном Philips. Диапазон тактовых частот составляет от 10 кГц до 100 кГц (PMBus расширяет этот диапазон до 400 кГц). Уровни напряжения и временные характеристики SMBus определены более строго, чем у I²C, но устройства, относящиеся к обеим системам, часто успешно работают на одной и той же шине. SMBus используется в качестве интерфейса в нескольких стандартах управления платформой, включая ASF, DASH и IPMI. SMBus используется для доступа к информации о конфигурации DRAM в рамках системы Serial Presence Detect. Область применения SMBus расширилась и включает в себя множество сценариев системной идентификации, помимо управления питанием.

Совместимость SMBus/I2C

Хотя SMBus основан на I²C, между спецификациями этих двух шин существуют существенные различия в области электрических характеристик, временных параметров, протоколов и режимов функционирования.

Входное напряжение (VIL и VIH)

При смешивании устройств спецификация I²C определяет входные уровни как 30% и 70% от напряжения питания VDD, которое может составлять 5 В, 3,3 В или другое значение. В отличие от привязки уровней входа шины к VDD, SMBus определяет их как фиксированные значения 0,8 и 2,1 В. SMBus 2.0 поддерживает VDD в диапазоне от 3 до 5 В. SMBus 3.0 поддерживает VDD в диапазоне от 1,8 до 5 В и VIH = 1,35 В.

Смбалерт.

SMBus имеет дополнительный опциональный общий сигнал прерывания под названием SMBALERT#, который ведомые устройства могут использовать для уведомления хоста о необходимости запросить у них информацию о произошедших событиях. SMBus также определяет менее распространенный "Протокол уведомления хоста", обеспечивающий аналогичные уведомления, но передающий больший объем данных и использующий многомастерный режим I²C.

Поддержка

SMBus устройства поддерживаются FreeBSD, OpenBSD, NetBSD, DragonFly BSD, Linux, Windows 98 и более новых версий, а также Windows CE.