AN 502: Implementing SMBus Controller in Altera MAX Series

ID 683635
Date 9/22/2014

1.1.1. Data Transfer on SMBus

Communication between a Master and a Slave on the bus is composed of START, Slave address, Data transfer, and STOP phases.

The following are the communication phases flow:

  1. After the START phase, the Slave address is sent.
  2. Only the Slave whose address matches the address transmitted by the Master responds by sending back an acknowledge bit.
  3. When Slave addressing is achieved, the data transfer will proceed byte-by-byte.
  4. The Master can terminate the communication by generating a STOP signal to free the bus.

The bus interface logic performs the following functions:

  • Switching between Master and Slave mode
  • START/STOP signal generation
  • Packet Error Code (PEC) generation
  • R/W mode
  • Error notification

The following features are incorporated in this design example:

  • Generic and simple microcontroller interface
  • Master and Slave mode of operation
  • Arbitration lost interrupt with automatic mode switching from Master to Slave
  • PEC generation and verification in master mode
  • 98.215 KHz operation
  • Clock low extension in both Master and Slave mode
Figure 2. SMBus Data Transfer