
PRODUCT SPECIFICATION
16-1
I2C Interface
Chapter 16
by Essam Abu-ghoush, Robert Nichols
16.1
I2C OVERVIEW
TM1300 includes an I2C interface which can be used to
control many different multimedia devices such as:
DMSDs - Digital multi-standard decoders
DENCs - Digital encoders
Digital cameras
I2C - Parallel I/O expanders
The key features of the I2C interface are:
Supports I2C single master mode
I2C data rate up to 400 kbits/sec
Support for the 7-bit addressing option of the I2C
specication
Provisions for full software use of I2C interface pins
for implementing software I2C or similar protocols
Note that the I2C pins are also used to load the initial boot
parameters and/or code from a serial EEPROM as de-
scribed in Section 13, “System Boot”. The boot logic is
only active upon TM1300 hardware reset and quiescent
afterwards.
A typical system using the I2C interface is presented in
Figure 16-1. The TM1300 is connected as a master to a
series of slave devices through SCL and SDA. Note that
the bus has one pullup resistor for each of the clock and
data lines. The pullup should be set to a voltage no high-
er than VREF_PERIPH.
16.2
NEW IN TM1300
The following are the main I2C differences from TM1000:
The SEX bit is removed. Endian-ness is xed.
The I2C clock rate is closer to 100/400 kHz
The GDI bit now correctly indicates write-completion
Clock stretching is always enabled.
16.3
EXTERNAL INTERFACE
The I2C external interface is composed of two signals as
shown in Table 16-1.
16.4
I2C REGISTER SET
The I2C user interface consists of four registers visible to
the programmer. The registers are mapped into the
MMIO address space and are fully accessible to the pro-
grammer. Figure 16-2 shows the I2C register set. To en-
sure compatibility with future devices, any undefined
MMIO bits should be ignored when read, and written as
‘0’s.
16.4.1
IIC_AR Register
The IIC_AR is the I2C
address register and is used in both
master receive and transmit modes. This register is writ-
ten with the address(es) of the I2C slave device and the
bytecount for transmit/receive. Table 16-2 lists the bit-
field definitions for the IIC_AR register.
ADDRESS must be programmed to contain the 7 bits of
the desired slave address
The DIRECTION bitfield controls read/write operation on
the I2C interface. The bit definition is:
DIRECTION = 0 –> I2C write
Figure 16-1. Typical I2C system implementation
SCL
SDA
TM1300
Slave
I2C
Slave
I2C
+ VREF_PERIPH
Rp
Table 16-1. I2C External interface
Signal
Type
Description
IIC_SDA
I/O
I2C serial data
IIC_SCL
O
I2C clock
Table 16-2. IIC_AR Register
Bits
Field Name
Denition
31:25
ADDRESS
7-bit slave device address.
24
DIRECTION
Read/Write control bit
23:16
reserved
must be written to ‘0’
15:8
COUNT
Byte count of requested transfer
7:0
reserved
Read as ‘0’