SLVAFZ9 June   2026 TAC5212

 

  1.   1
  2.   Multiple TAC5x1x Devices with a Shared TDM and I2C Bus
  3.   Trademarks
  4. 1Introduction
  5. 2Sharing the Control Bus
  6. 3Sharing the Audio Bus
    1. 3.1 ASI Configuration for Shared TDM
    2. 3.2 ASI Configuration for Daisy Chain TDM
  7. 4Configuring PurePath Console 3 for Multiple TAC5x1x EVMs
    1. 4.1 Changing the Default I2C Address of the TAC5x1x
    2. 4.2 Launching PurePath Console with Multiple Devices
  8. 5PurePath Console I2C Scripts
    1. 5.1 TAC5x1x I2C Scripts for Shared TDM
    2. 5.2 TAC5x1x I2C Scripts for Daisy Chain TDM

ASI Configuration for Daisy Chain TDM

To simplify board routing and TDM bus timing requirements, or to avoid high DOUT line load capacitance, TAC5x1x devices offer a daisy-chain mode that routes data output (DOUT) of one device as input to the GPIO1, GPIO2, or GPI1 pin of another device. Each device internally combines the data into the appropriate slot in the TDM bus and passes it to the next device. Unlike the Shared TDM, this configuration is only available for the ADC path, as the analog DAC output cannot be daisy-chained.

 TAC5x1x Daisy Chain TDM Connection DiagramFigure 3-3 TAC5x1x Daisy Chain TDM Connection Diagram

Setting the DAISY_EN bit field of the ASI_CFG0 Register shown in Table 3-4 configures the devices for daisy chain configuration. The DAISY_IN_SEL bit field selects the GPIO pin to be used as the daisy chain input. The selected GPIO must also be configured as an input. Only one ASI is available when configuring in daisy chain mode.

Table 3-4 ASI_CFG0 Register 0x18
BitFieldTypeResetDescription
7PASI_DISR/W0bDisable or enable primary ASI (PASI).
0d = Primary ASI enabled
1d = Primary ASI disabled
6SASI_DISR/w1bDisable or enable secondary ASI (SASI).
0d = Secondary ASI enabled
1d = Secondary ASI disabled
5

SASI_CFG_GANG

R/W0bAll configurations of secondary ASI ganged with primary ASI.
0d = Secondary ASI has independent configurations
1d = Secondary ASI configurations same as primary ASI
4

DAISY_EN[1:0]

R/W00bDaisy chain feature enable (Only 1 ASI with 1 DOUT AND DIN available)
0d = Daisy chain disabled
1d = PASI daisy chain enabled (Secondary ASI not available)
2d = SASI daisy chain enabled (Primary ASI not available)
3d = Reserved; Don't use
3-0DAISY_IN_SEL[2:0]R/W000bDaisy input select configuration.
0d = Daisy input disabled
1d = GPIO1
2d = GPIO2
3d = GPI1
4d = Reserved
5d = DIN
6d to 7d = Reserved

For the example of Figure 3-3, the following I2C script configures U1, U2, and U3 for daisy chain, taking input from the next device in the DOUT through GPIO1 of the chain. Note that channels of each device are mapped to slots 0-3. However, the DOUT of U1 has slots 0-3 with the U1 channels, slots 4-7 with the U2 channels, slots 8-11 with the U3 channels, and slots 12-15 with the U4 channels. Note that the first device in the daisy chain (U4) does not need to be configured for daisy chain mode since it is not taking input on GPIO1 from another device.

w A0 1E 20  # Set U1 Ch1 mapped to slot 0 of DOUT
w A0 1F 21  # Set U1 Ch2 mapped to slot 1 of DOUT
w A0 20 22  # Set U1 Ch3 mapped to slot 2 of DOUT
w A0 21 23  # Set U1 Ch4 mapped to slot 3 of DOUT
w A2 1E 20  # Set U2 Ch1 mapped to slot 0 of DOUT
w A2 1F 21  # Set U2 Ch2 mapped to slot 1 of DOUT
w A2 20 22  # Set U2 Ch3 mapped to slot 2 of DOUT
w A2 21 23  # Set U2 Ch4 mapped to slot 3 of DOUT
w A4 1E 20  # Set U3 Ch1 mapped to slot 0 of DOUT
w A4 1F 21  # Set U3 Ch2 mapped to slot 1 of DOUT
w A4 20 22  # Set U3 Ch3 mapped to slot 2 of DOUT
w A4 21 23  # Set U3 Ch4 mapped to slot 3 of DOUT
w A6 1E 20  # Set U4 Ch1 mapped to slot 0 of DOUT
w A6 1F 21  # Set U4 Ch1 mapped to slot 1 of DOUT
w A6 20 22  # Set U4 Ch1 mapped to slot 2 of DOUT
w A6 21 23  # Set U4 Ch1 mapped to slot 3 of DOUT
w A0 18 49  # Set U1's ASI to daisy chain via GPIO1
w A0 21 10  # Set U1's GPIO1 input as ASI input for daisy chain
w A2 18 49  # Set U2's ASI to daisy chain via GPIO1
w A2 21 10  # Set U2's GPIO1 input as ASI input for daisy chain
w A4 18 49  # Set U3's ASI to daisy chain via GPIO1
w A4 21 10  # Set U3's GPIO1 input as ASI input for daisy chain