
Philips Semiconductors
PNX15xx Series
Volume 1 of 1
Chapter 25: I2C Interface
PNX15XX_SER_3
Koninklijke Philips Electronics N.V. 2006. All rights reserved.
Product data sheet
Rev. 3 — 17 March 2006
25-2
Generation of clock signals on the I2C bus is always the responsibility of the master
device. Each master generates its own clock signals when transferring data on the
bus. Bus clock signals from a master can only be altered when they are stretched by
a slow-slave device holding down the clock line or by another master when arbitration
occurs.
1.1 Features
The main features of the I2C bus are as follows:
Bi-directional data transfer between masters and slaves
Multi-master bus (no central master)
Arbitration between simultaneously transmitting masters without corruption of
serial data on the bus
Serial clock synchronization, which allows communication between devices with
different bit rates
Using serial clock synchronization as a handshake mechanism to suspend and
resume serial transfer
May be used for test and diagnostic purposes.
2.
Functional Description
2.1 General Operations
The IIC module supports a master/slave I2C bus interface with an integrated shift
register, shift timing generation and slave address recognition. It is compliant with the
I2C Bus Specication. Both the I2C standard mode (100 kHz SCL) and fast mode (up
to 400 kHz SCL) are supported.
2.1.1
IIC Arbitration and Control Logic
In the master transmitter mode, the arbitration logic checks that every transmitted
logic ‘1’ actually appears as a logic 1 on the I2C bus. If another device on the bus
overrules a logic ‘1’ and pulls the SDA line low, arbitration is lost and the IIC module
immediately changes from master transmitter to slave receiver. The IIC module will
continue to output clock pulses (on SCL) until transmission of the current serial byte
is complete. Arbitration may also be lost in the master receiver mode. Loss of
arbitration in this mode can only occur while the IIC module is returning a “not
acknowledge” (logic ‘1’) to the bus. Arbitration is lost when another device on the bus
pulls this signal LOW. Since this can occur only at the end of a serial byte, the IIC
module generates no further clock pulses.
The synchronization logic will synchronize the serial clock generator with the clock
pulses on the SCL line from another device. If two or more master devices generate
clock pulses, the “mark” (high level) duration is determined by the device that
generates the shortest marks, and the “space” (low level) duration is determined by
the device that generates the longest spaces.