5.2 I2C Transmission to ECC608-TNGHNT

The transmission of data from the system to the ECC608-TNGHNT is summarized in the table below. The order of transmission is as follows:

  • Start Condition
  • Device Address Byte
  • Word Address Byte
  • Optional Data Bytes (1 through N)
  • Stop Condition
Figure 5-4. Normal I2C Transmission to ECC608-TNGHNT

SDA is driven low by the ECC608-TNGHNT ACK periods.

The following tables label the bytes of the I/O transaction. The column labeled “I2C Name” provides the name of the byte as described in the AT24C16 data sheet.

Table 5-1. I2C Transmission to ECC608-TNGHNT
NameI2C NameDescription
Device AddressDevice AddressThis byte selects a particular device on the I2C interface. The ECC608-TNGHNT is selected if bits 1 through 7 of this byte match bits 1 through 7 of the I2C_Address byte in the Configuration zone. Bit 0 of this byte is the standard I2C R/W bit and must be zero to indicate a write operation (the bytes following the device address travel from the host to the client).
Word AddressWord AddressThis byte must have a value of 0x03 for normal operation.
CommandData1, NThe command group, consisting of the count, command packet and the 2-byte CRC. The CRC is calculated over the size and packet bytes.

Because the device treats the command input buffer as a FIFO, the input group can be sent to the device in one or many I2C command groups. The first byte sent to the device is the count, so after the device receives that number of bytes, it will ignore any subsequently received bytes until the execution is finished.

The system must send a Stop condition after the last command byte to ensure that ECC608-TNGHNT will start the computation of the command. Failure to send a Stop condition may eventually result in a loss of synchronization; see I2C Synchronization for recovery procedures.