img zhou_weimin


发表于2004/9/24 16:24:00  2286人阅读

System Management Bus(SMBus) Specification (Official Website)


I2C and SMBus framework



I2C is an acronym for Inter Integrated Circuit bus. The I2C bus was developed in the early 1980's by Philips semiconductors. It's purpose was to provide an easy way to connect a CPU to peripheral chips in a TV-set.



The BUS physically consists of 2 active wires and a ground connection. The active wires, SDA and SCL, are both bidirectional. Where SDA is the Serial DAta line and SCL is the Serial CLock line.

Every component hooked up to the bus has its own unique address whether it is a CPU, LCD driver, memory, or complex function chip. Each of these chips can act as a receiver and/or transmitter depending on it's func- tionality. Obviously an LCD driver is only a receiver, while a memory or I/O chip can both be transmitter and receiver. Furthermore there may be one or more BUS MASTER's.

The BUS MASTER is the chip issuing the commands on the BUS. In the I2C protocol specification it is stated that the IC that initiates a data transfer on the bus is considered the BUS MASTER. At that time all the others are regarded to as the BUS SLAVEs. As mentioned before, the IC bus is a Multi-MASTER BUS. This means that more than one IC capable of initiating data transfer can be connected to it.

该总线由2根实际数据线(2通路)和一条地线组成。这2根数据线称为SDASCL,都是双向传递的。其中SDA是串行数据线,SCL是串行时钟线。每个挂在总线上的设备都有自己唯一的地址来决定是什么设备,如CPULCD Drivermemory,或者是复杂功能的芯片。每一个芯片设备既可以作为数据接收者,也可以作为数据传递者,根据具体功能实现存在不同。显然,LCD Driver只能是数据接收者(?),而memoryI/O芯片则同为数据接收者和传递者。

此外,系统中可以存在一个或者多个BUS控制器。BUS控制器是向总线上发送命令的芯片。在I2C协议书中规定在总线上开始一次数据传输的设备称为总线控制器。同时,其他的设备称为BUS SLAVE。如前面所提到的,IC总线是具有多个Master的总线。




The System Management Bus is a two-wire interface through which simple power-related chips can communicate with rest of the system. It uses I2C as its backbone (see iicbus(4)).

A system using SMB passes messages to and from devices instead of trip- ping individual control lines.



With the SMBus, a device can provide manufacturer information, tell the system what its model/part number is, save its state for a suspend event, report different types of errors, accept control parameters, and return its status.



The SMBus may share the same host device and physical bus as ACCESS bus components provided that an appropriate electrical bridge is provided between the internal SMB devices and external ACCESS bus devices.

Supported interfaces

Various I2C and SMBus controllers drivers are provided by the iicbus framework:

  • AMD 756 with amdpm(4)
  • Intel ServerWorks with ichsmb(4)
  • VIA family with viapm(4)
  • Acer Aladdin VI/V/Pro2 with alpm(4)
  • Intel PIIX4 interface with intpm(4)
  • Philips PCF8584 master/slave interface with pcf(4)
  • Generic bit-banging master-only driver with iicbb(4)
  • Parallel port specific bit-banging interface lpbb(4)
  • Brooktree848 video chipset, hardware and software master-only interface with bktr(4)


0 0


取 消