Jump to content

Шина системного управления

Шина управления системой (сокращенно SMBus или SMB ) представляет собой несимметричную простую двухпроводную шину, предназначенную для упрощения связи. Чаще всего он встречается в наборах микросхем материнских плат компьютеров для связи с источником питания для инструкций включения/выключения. Точные функциональные возможности и аппаратные интерфейсы различаются у разных поставщиков.

Он получен из I²C для связи с устройствами с низкой пропускной способностью на материнской плате , особенно с микросхемами, связанными с питанием, такими как подсистема аккумуляторной батареи ноутбука (см. Система Smart Battery и ACPI ). Другие устройства могут включать внешние главные хосты, датчик температуры, датчики вентилятора или напряжения, переключатели крышки, тактовый генератор и RGB-подсветку. Карты расширения PCI могут подключаться к сегменту SMBus.

Устройство может предоставлять информацию о производителе, указывать свою модель/номер детали, сохранять свое состояние для события приостановки, сообщать о различных типах ошибок, принимать параметры управления, возвращать статус по SMBus и опрашивать регистры набора микросхем. SMBus обычно не настраивается и не доступен пользователю. Хотя устройства SMBus обычно не могут определить свою функциональность, новая коалиция PMBus расширила SMBus, включив в него соглашения, позволяющие это.

SMBus был разработан Intel и Duracell в 1994 году. [1] основан на протоколе последовательной шины Philips I²C Он передает часы, данные и инструкции и . Диапазон тактовых частот составляет от 10 кГц до 100 кГц. (PMBus расширяет эту частоту до 400 кГц.) Его уровни напряжения и тайминги определены более строго, чем у I²C, но устройства, принадлежащие к двум системам, часто успешно смешиваются на одной шине. [ нужна ссылка ]

SMBus используется в качестве межсоединения в нескольких стандартах управления платформами, включая: ASF , DASH , IPMI .

SMBus используется для доступа к информации о конфигурации DRAM в рамках обнаружения последовательного присутствия . SMBus превратился в широкий спектр вариантов использования системного перечисления, помимо управления питанием.

Совместимость SMBus/I²C

[ редактировать ]

Хотя SMBus является производным от I²C, между спецификациями двух шин есть несколько существенных различий в области электрооборудования, синхронизации, протоколов и режимов работы. [2] [3] [4] [5]

Электрический

[ редактировать ]

Входное напряжение ( В IL и В IH )

[ редактировать ]

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

Ток стока ( I OL )

[ редактировать ]

SMBus 2.0 определяет класс «Высокая мощность», который включает ток потребления 4 мА, который не может управляться микросхемами I²C, если подтягивающий резистор не рассчитан на уровни шины I²C.

Устройства NXP имеют более высокий набор электрических характеристик по мощности, чем SMBus 1.0. Основное отличие заключается в допустимой токовой нагрузке при = VOL 0,4 В.

  • SMBus малой мощности = 350 мкА
  • SMBus высокая мощность = 4 мА
  • I²C-шина = 3 мА

Устройства высокой мощности SMBus и устройства шины I²C будут работать вместе, если подтягивающий резистор рассчитан на ток 3 мА.

Частота ( F MAX и F MIN )

[ редактировать ]

Тактовая частота SMBus определяется от 10 до 100 кГц, а I²C может составлять 0–100 кГц, 0–400 кГц, 0–1 МГц и 0–3,4 МГц, в зависимости от режима. Это означает, что шина I²C, работающая на частоте менее 10 кГц, не будет совместима с SMBus, поскольку устройства SMBus могут выйти из строя. Однако многие устройства SMBus поддерживают более низкие частоты.

SMBus 3.0 добавляет скорости шины 400 кГц и 1 МГц.

  • SMBus определяет таймаут низкого уровня тактовой частоты, TIMEOUT равный 35 мс. I²C не определяет ограничения по времени ожидания.
  • SMBus указывает T LOW:SEXT в качестве совокупного времени продления низкого уровня тактовой частоты для ведомого устройства. I²C не имеет подобной спецификации.
  • SMBus определяет T LOW:MEXT в качестве совокупного времени продления низкого уровня тактовой частоты для ведущего устройства. Опять же, I²C не имеет подобной спецификации.
  • SMBus определяет время нарастания и спада сигналов шины. I²C нет.
  • Спецификации тайм-аута SMBus не препятствуют надежной работе устройств I²C по SMBus. Разработчик несет ответственность за то, чтобы устройства I²C не нарушали эти параметры синхронизации шины.

Протоколы

[ редактировать ]

Использование ACK и NACK

[ редактировать ]

Существуют следующие различия в использовании сигнализации шины NACK:В I²C ведомому получателю разрешено не подтверждать адрес ведомого устройства, если, например, он не может получить адрес из-за выполнения какой-либо задачи в реальном времени. SMBus требует, чтобы устройства всегда подтверждали свой собственный адрес в качестве механизма обнаружения присутствия съемного устройства на шине (батарея, док-станция и т. д.).

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

Помимо индикации состояния занятости ведомого устройства, SMBus также использует механизм NACK для индикации приема недопустимой команды или данных. Поскольку такое условие может возникнуть на последнем байте передачи, требуется, чтобы устройства SMBus имели возможность генерировать подтверждение отказа после передачи каждого байта и до завершения транзакции. Это важно, поскольку SMBus не обеспечивает никакой другой сигнализации повторной отправки. Это различие в использовании сигнализации NACK влияет на конкретную реализацию порта SMBus, особенно в устройствах, обрабатывающих критически важные системные данные, таких как хост SMBus и компоненты SBS.

Протоколы SMBus

[ редактировать ]

Каждая транзакция сообщения в SMBus соответствует формату одного из определенных протоколов SMBus. Протоколы SMBus представляют собой подмножество форматов передачи данных, определенных в спецификациях I²C. Устройства I²C, доступ к которым возможен через один из протоколов SMBus, совместимы со спецификациями SMBus. К устройствам I²C, которые не поддерживают эти протоколы, невозможно получить доступ стандартными методами, как определено в спецификациях SMBus и Advanced Configuration and Power Interface (ACPI).

Протокол разрешения адресов

[ редактировать ]

SMBus использует аппаратное обеспечение I²C и аппаратную адресацию I²C, но добавляет программное обеспечение второго уровня для построения специальных систем. В частности, его спецификации включают протокол разрешения адресов, который может выполнять динамическое распределение адресов.Динамическая реконфигурация аппаратного и программного обеспечения позволяет«горячего подключения» и используется немедленно, без перезапуска системы. Устройства распознаются автоматически и им присваиваются уникальные адреса. Это преимущество приводит к созданию пользовательского интерфейса, работающего по принципу «включай и работай». В обоих этих протоколах проводится очень полезное различие между системным хостом и всеми другими устройствами в системе, которые могут иметь имена и функции главных или подчиненных устройств.

Функция тайм-аута

[ редактировать ]

SMBus имеет функцию тайм-аута, которая сбрасывает устройства, если связь занимает слишком много времени.Этим объясняется минимальная тактовая частота 10 кГц для предотвращения блокировки шины. I²C может быть шиной постоянного тока, что означает, что ведомое устройство растягивает тактовую частоту ведущего устройства при выполнении какой-либо процедуры, пока ведущее устройство имеет к нему доступ. Это уведомит ведущего о том, что ведомое занято, но не хочет терять связь. Ведомое устройство позволит продолжить работу после завершения своей задачи. В протоколе шины I²C нет ограничений на длительность этой задержки, тогда как для системы SMBus она будет ограничена 35 мс.Протокол SMBus просто предполагает, что если что-то происходит слишком долго, то это означает, что на шине возникла проблема и что все устройства должны перезагрузиться, чтобы очистить этот режим. Подчиненным устройствам не разрешается удерживать тактовый сигнал на низком уровне слишком долго.

Проверка ошибок пакетов

[ редактировать ]

SMBus 1.1 и более поздние версии определяют дополнительную проверку ошибок пакетов ( PEC ). В этом режиме в конце каждой транзакции добавляется байт PEC (код ошибки пакета). Байт рассчитывается как CRC-8 контрольная сумма , рассчитанная для всего сообщения, включая адрес и бит чтения/записи. Используемый полином x 8 2 +x+1 (алгоритм CRC-8- ATM HEC , инициализированный нулем). [6] [7] [8]

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

Поддерживать

[ редактировать ]

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

См. также

[ редактировать ]
  1. ^ «DURACELL И INTEL ОБЪЯВЛЯЮТ СПЕЦИФИКАЦИИ «УМНОЙ БАТАРЕИ» ДЛЯ ПОРТАТИВНЫХ КОМПЬЮТЕРОВ — Бесплатная онлайн-библиотека» . Thefreelibrary.com . Проверено 27 октября 2017 г.
  2. ^ «Спецификация шины управления системой (SMBus), версия 2.0» (PDF) . smbus.org
  3. ^ Перейти обратно: а б «Спецификация шины управления системой (SMBus), версия 3.0» (PDF) . smbus.org
  4. ^ Перейти обратно: а б «Спецификация шины I2C и руководство пользователя, версия 7» (PDF) . nxp.com
  5. ^ «УКАЗАНИЕ ПО ПРИМЕНЕНИЮ 476. Сравнение шины I²C с шиной SMBus» . Максим. 01.12.2000. 090429 maxim-ic.com
  6. ^ «Проектирование с помощью SMBus 2.0» (PDF) . Sbs-forum.org . Проверено 27 октября 2017 г.
  7. ^ «Калькулятор CRC-8» . Smbus.org . Проверено 27 октября 2017 г.
  8. ^ «CRC-8 для SMBus» . Picbasic.co.uk . Проверено 27 октября 2017 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 50459aad94127f124f11e346d7570462__1711836300
URL1:https://arc.ask3.ru/arc/aa/50/62/50459aad94127f124f11e346d7570462.html
Заголовок, (Title) документа по адресу, URL1:
System Management Bus - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)