SMBus

SMBus (англ. System Management Bus) — последовательный протокол обмена данными для устройств питания. Основан на шине I²C, но использует более низкий уровень сигнального напряжения (3,3 В).SMBus (System Management Bus) – это низкоскоростная последовательная шина для системного управления, которая используется для связи между различными компонентами системы, такими как материнская плата, процессор, память и другие устройства. SMBus основан на шине I2C (Inter-Integrated Circuit) и предоставляет протокол коммуникации между устройствами.
SMBus предназначен для мониторинга и управления различными параметрами системы, такими как температура, напряжение, скорость вращения вентиляторов и другие. Он также может использоваться для передачи данных и команд управления между компонентами системы.
Шина SMBus имеет два типа устройств – главные (master) и подчиненные (slave). Главные устройства контролируют обмен данными на шине и инициируют передачу данных, а подчиненные устройства выполняют команды и предоставляют информацию о состоянии системы.
SMBus поддерживает различные режимы передачи данных, такие как чтение, запись, блочная передача и другие. Он также предоставляет возможность для устройств подключаться к шине в различных режимах, таких как открытый коллектор и открытое затворное положение, что позволяет совместно использовать шину с другими устройствами.
Для работы по шине SMBus устройства должны поддерживать стандартные команды и протоколы обмена данными, определенные спецификацией SMBus. Это позволяет обеспечить совместимость и взаимодействие различных устройств на шине SMBus.
SMBus является распространенным и широко используемым интерфейсом для мониторинга и управления системами, особенно в области системного управления мощными серверами и компьютерами. Был предложен Intel в 1995 году. Используется, например, для получения информации о состоянии аккумуляторной батареи ноутбука (оставшейся заряд аккумуляторной батареи, температура, количество использованных циклов разряда, и т. д.). С версии SMBus 2.0 (2000 год) используется не только для настройки батареи, но и для иных внутренних устройств компьютера.

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

  • уменьшается количество проводов (не требуются отдельные линии управления);
  • гарантируется дальнейшая расширяемость путём приёма сообщений по протоколу I²C (только на низких скоростях).

Назначение SMBus:

  • предоставление информации об изготовителе;
  • предоставление модели и артикула устройства;
  • сохранения состояния устройства при переходе в режим энергосбережения (suspend);
  • передача управляющих параметров;
  • предоставление сообщений о различных ошибках и статусе;
  • определение пониженного напряжения аккумуляторной батареи.

Использование SMBus для настройки ОЗУ:

  • определение объёма памяти и её конфигурация (методом последовательного обнаружения — SPD, Serial presence detect),
  • поиск свободных соединителей памяти для отключения сигналов тактовой частоты на неиспользуемых каналах.

По сравнению с I²C, SMBus работает на скоростях до 100 кГц и не поддерживает 0,4 и 2-МГц вариантов.

Использование SMBus для доступа к информации о процессоре (PIROM) компании Intel:

  • определение числа ядер модели;
  • определение типа корпуса (сокета);
  • определение значения TDP;
  • определение рабочих частот;
  • определение напряжения питания;
  • определение частоты QPI;
  • определение объёма кэш-памяти L2 и L3;
  • определение наборов инструкций.

Обсуждение закрыто.