C8051F340/1/2/3/4/5/6/7

The direction bit (R/W) occupies the least-significant bit position of the address byte. The direction bit is set to logic 1 to indicate a "READ" operation and cleared to logic 0 to indicate a "WRITE" operation.

All transactions are initiated by a master, with one or more addressed slave devices as the target. The master generates the START condition and then transmits the slave address and direction bit. If the trans- action is a WRITE operation from the master to the slave, the master transmits the data a byte at a time waiting for an ACK from the slave at the end of each byte. For READ operations, the slave transmits the data waiting for an ACK from the master at the end of each byte. At the end of the data transfer, the master generates a STOP condition to terminate the transaction and free the bus. Figure 17.3 illustrates a typical SMBus transaction.

SCL

SDA

SLA6

SLA5-0

R/W

D7

 

D6-0

 

START

Slave Address + R/W

 

ACK

Data Byte

NACK

STOP

Figure 17.3. SMBus Transaction

17.3.1. Arbitration

A master may start a transfer only if the bus is free. The bus is free after a STOP condition or after the SCL and SDA lines remain high for a specified time (see Section “17.3.4. SCL High (SMBus Free) Timeout” on page 196). In the event that two or more devices attempt to begin a transfer at the same time, an arbi- tration scheme is employed to force one master to give up the bus. The master devices continue transmit- ting until one attempts a HIGH while the other transmits a LOW. Since the bus is open-drain, the bus will be pulled LOW. The master attempting the HIGH will detect a LOW SDA and lose the arbitration. The win- ning master continues its transmission without interruption; the losing master becomes a slave and receives the rest of the transfer if addressed. This arbitration scheme is non-destructive: one device always wins, and no data is lost.

Rev. 0.5

195

Page 195
Image 195
Silicon Laboratories C8051F343, C8051F347, C8051F346, C8051F341, C8051F340, C8051F344, C8051F345 SMBus Transaction, Arbitration