7. I
2
C Interface > Boot Load Sequence
172
Tsi578 User Manual
June 6, 2016
Integrated Device Technology
www.idt.com
As a second example, the following shows an EEPROM configured to first load the I2C_MST_CFG
register then chain to address 0x80 in the same EEPROM and load the I2C_MST_TDATA register.
Note that the chain requires loading the I2C_BOOT_CNTRL register. The new peripheral address is
0x80 >> 3 = 0x10, because the 3 LSBs must be zero and are not part of the PADDR field.
7.8.8
I
2
C Boot Time
The time required to perform an I
2
C boot depends on the following:
•
The number of registers that require configuration
•
The number of devices contending for EEPROM or I
2
C bus access
•
The number of chaining operations
•
The clocking speeds of the master devices
Because many of these parameters are outside the control of the Tsi578, the boot time cannot be
predicted with complete accuracy.
Table 20: Sample EEPROM With Chaining
PerAdr
0
1
2
3
Description
0x0
0x00
0x02
0xFF
0xFF
RegCnt = 2, must have
0xFFFF at end
0x4
0xFF
0xFF
0xFF
0xFF
Must be 0xFFFF_FFFF
0x8
0x00
0x01
0xD1
0x08
RegAdr = 0x1D108
I2C_MST_CFG
0xC
0x01
0x02
0x03
0x04
RegData = 0x0102_0304
0x10
0x00
0x01
0xD1
0x40
RegAdr = 0x1D140
I2C_BOOT_CNTRL
0x14
0x80
0x50
0x00
0x10
RegData = 0x8050_0010
CHAIN = 1
BOOT_ADDR = 1010000
PADDR = 0x10
0x18 - 0x7F
xx
xx
xx
xx
Unused by Boot
0x80
0x00
0x01
0xFF
0xFF
RegCnt = 1, must have
0xFFFF at end
0x84
0xFF
0xFF
0xFF
0xFF
Must be 0xFFFF_FFFF
0x88
0x00
0x01
0xD1
0x14
RegAdr = 0x1D114
I2C_MST_TDATA
0x8C
0x05
0x06
0x07
0x08
RegData = 0x0506_0708
>= 0x90
xx
xx
xx
xx
Unused by Boot