JAJSLW7B December 2020 – September 2023 TPS6593-Q1
PRODUCTION DATA
For safety applications, the TPS6593-Q1 supports read and write protocols with embedded CRC data fields. The TPS6593-Q1 uses a standard CRC-8 polynomial to calculate the checksum value: X8 + X2 + X + 1. The CRC algorithm details are as follows:
For I2C Interface, the TPS6593-Q1 uses the above mentioned CRC-8 polynomial to calculate the checksum value on every bit except the ACK and NACK bits it receives from the MCU during a write protocol. The TPS6593-Q1 compares this calculated checksum with the R_CRC checksum value that it receives from the MCU. The TPS6593-Q1 also uses the above mentioned CRC-8 polynomial to calculate the T_CRC checksum value during a read protocol. This T_CRC checksum value is based on every bit that the TPS6593-Q1 receives, except the ACK and NACK bits, and the data that the TPS6593-Q1 transmits to the MCU during a read protocol. The MCU must use this same CRC-8 polynomial to calculate the checksum value based on the bits that the MCU receives from the TPS6593-Q1. The MCU must compare this calculated checksum with the T_CRC checksum value that it receives from the TPS6593-Q1.
For the SPI interface, the TPS6593-Q1 uses the above mentioned CRC-8 polynomial to calculate the checksum value on every bit it receives from the MCU during a write protocol. The TPS6593-Q1 compares this calculated checksum with the R_CRC checksum value, that it receives from the MCU. During a read protocol, the device also uses the above mentioned CRC-8 polynomial to calculate the T_CRC checksum value based on the first 16 bits sent by the MCU, and the next 8 bits the TPS6593-Q1 transmits to the MCU. The MCU must use this same CRC-8 polynomial to calculate the checksum value based on the bits which the MCU sends to and receives from the TPS6593-Q1, and compare it with the T_CRC checksum value that it receives from the TPS6593-Q1.
Figure 8-48 and Figure 8-49 are examples for the 8-bit R_CRC and the T_CRC calculation from 16-bit databus.