Некоторые различия между SMBus и I2C интерфейсами в современных системах управления:
- Уровни входного напряжения. 4 I2C определяет их как проценты от VCC, а SMBus работает с фиксированными уровнями входного напряжения. 4
- Тактовая частота. 14 SMBus требует минимальную тактовую частоту шины 10 кГц (кроме случаев, когда шина не используется), у I2C такого требования нет. 4 Максимальная частота SMBus — 100 кГц, что равно максимальной скорости I2C в стандартном режиме. 4
- Таймаут. 1 Шина I2C работоспособна на частотах до 0 Гц и не имеет таймаута по бездействию. 1 В интерфейсе SMBus таймаут возможен: ведомое устройство сбрасывает свой интерфейс после того, как сигнал синхронизации сохраняет низкий уровень в течение временного интервала, превышающего время ожидания (максимум 35 мс). 1
- Подтверждение адреса. 4 I2C не требует, чтобы устройство всегда подтверждало свой адрес. 4 SMBus, напротив, требует, чтобы устройство всегда подтверждало свой адрес. 4
- Класс низкой мощности. 4 У SMBus есть такой класс для приложений, где необходимо минимизировать энергопотребление, например в системах, работающих от батарей. 4 У I2C подобной спецификации нет. 4
SMBus и I2C имеют общие корни, но предназначены для разных целей. 10 SMBus особенно подходит для задач управления системой и связи с компонентами, связанными с питанием. 10 I2C используется в устройствах, где простота и низкие производственные затраты важнее скорости. 5