
I2C EEPROM Memory Map
Block Header 1
Block Header 2
Block Header N
…
Data Block N
Data Block 1
Data Block 2
SLES235 – JULY 2008 ....................................................................................................................................................................................................... www.ti.com
The memory load information starts with reading the header and data information that starts at sub-address 0 of
the EEPROM. This information must be stored in a sequential memory addresses with no intervening gaps. The
Data block is contiguous blocks of data that immediately follow the headers locations. The TAS3218 memory
data can be stored and loaded in (almost) any order. Additionally this addressing scheme permits portions of the
TAS3218 internal memories to be loaded.
Figure 23. EEPROM Address Map
The TAS3218 will sequentially read EEPROM memory and load its internal memory unless it does not find a
valid memory header block, is not able to read the next memory location because the end of memory was
reached, detects a check sum error, or reads a end of program header block. When it encounters a valid header
or read error, the TAS3218 will attempt to read the header or memory location three times before it determines
that it has an error. If the TAS3218 encounters a Check Sum error it will attempt to re-read the entire block of
memory two more times before it determines that it has an error.
NOTE:
Once the micro program memory has been loaded, it can not be reloaded until the
TAS3218 has been RESET.
If an error is encountered TAS3218 terminates its memory load operation, loads the default configuration for both
the M8051 MCU and DSP from the embedded ROM, and disables further master I2C bus operations.
If an end of program data block is read, the TAS3218 has completed the initial program load.
The I2C master mode utilizes the starting and ending I2C check sums to verify a proper EEPROM download. The
first 16-bit data word received from the EEPROM is the I2C check sum at sub address 0x00, is stored and
compared against the 16-bit data word received for last subaddress, the ending I2C check sum and the check
sum that is computed during the download. These three values must be equal. If the read and computed values
do not match, the TAS3218 sets the memory read error bits in the Status register and repeats the download from
the EEPROM two more times. If the comparison check again fails the third time, the TAS3218 sets the micro
program to the default value.
NOTE:
When acting as an I2C master, the data rate transfer is fixed at 375 kHz.
32
Copyright 2008, Texas Instruments Incorporated