46.6.6.8 Multiple Data Mode

Multiple Data mode minimizes the number of accesses by concatenating the data to send/read in one access.

When TWIHS_FMR.TXRDYM > 0, the Transmit FIFO operates in Multiple Data mode.

When TWIHS_FMR.RXRDYM > 0, the Receive FIFO operates in Multiple Data mode.

In Multiple Data mode, it is possible to write/read up to four data in one TWIHS_THR/TWIHS_RHR register access.

The number of data to write/read is defined by the size of the register access. If the access is a byte-size register access, only one data is written/read. If the access is a halfword size register access, then up to two data are read and only one data is written. Lastly, if the access is a wordsize register access, then up to four data are read and up to two data are written.

Written/Read data are always right-aligned, as described in sections TWIHS_RHR (FIFO_ENABLED) and TWIHS_THR (FIFO_ENABLED).

As an example, if the Transmit FIFO is empty and there are six data to send, either of the following write accesses may be performed:

  • six TWIHS_THR-byte write accesses
  • three TWIHS_THR-halfword write accesses
  • one TWIHS_THR-word write access and one TWIHS_THR halfword write access

With a Receive FIFO containing six data, any of the following read accesses may be performed:

  • six TWIHS_RHR-byte read accesses
  • three TWIHS_RHR-halfword read accesses
  • one TWIHS_RHR-word read access and one TWIHS_RHR-halfword read access