This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TLV320AIC3254-Q1: I2S as additional audio I/O

Part Number: TLV320AIC3254-Q1


we're planning to evaluate the TLV320AIC3254-Q1.

Our question is:

we'd like to use the I2S interface of our GSM module alongside with the secondary I2S interface of the codec to make the codec act like an interface towards the user (between used and gsm module).

This is the scenario:

The GSM module receives a call, it sends the voice signal out through the I2S interface to the codec, the codec plays the voice from one of its output (voice from secondary I2S to analog output)

The codec acquires the voice of the user through one of its input, sends it through the I2S interface to the GSM module (voice from analog input to secondary I2S)

Is this something that the TLV320AIC3254-Q1 can do?

Is this something that any other TI codec can do?

Thanks and regards,

Alessandro Piscozzo


  • Hi Alessandro,

    Although the AIC3254 has a primary and secondary I2S lines, they cannot be used simultaneously. Do you need the I2S lines to work simultaneously?

    You can refer to section 2.6.5 in the TLV320AIC3254 Application Reference Guide for more information on the secondary I2S interface. 



  •  Hi Aaron, not necessarily. 

    We can go for another solution. Our CPU has more than one I2S interface.

    We could

    connect the GSM module with the CPU through one I2S(1) interface

    connect the AIC3254 with the CPU through one I2S(2) interface

    connect I2S(1) and I2S(2) internally to the microprocessor creating a loopback

    The idea is to use the mic/headphone connection of the AIC3254 in a phone call.

    Do you think it is feasible? Do you have any other suggestion as to how we could achieve our requirement?
    Obviously we need to check how the internal loopback is possible.... but that would be on microprocessor side.

    Thanks and regards,


  • Hi Alessandro,

    This implementation is feasible to me.

    The AIC3254 device can be used for mobile handsets which looks similar to what you are trying to achieve. 



  • Thanks Aaron.

    Assuming one I2S bus between microcontroller and codec and another I2S between microcontroller and GSM module.

    In attachment what we'd like to achieve.


    Let's say that one VOIP (or GSM) conversation is ongoing using the I2S bus between microcontroller and codec. Would it be possible to drive, through the same I2S bus between microprocessor and codec another stereo output channel of the codec at the same time as well? (obviously weighing the TDM timing)

    Or the codec is in general meant to drive only one input and one output at the same time?


    With reference to the picture, we're going to have two input channel dedicated to noise cancellation. An_in4 in this case is used to cancel the noise in the proximity of the speaker connected to An_out2.

    Would that be possible?



  • Alessandro, 

    I may not be understanding your diagram correctly, but the AIC3254 only has two DACs.  So it would not be possible to drive two separate stereo outputs with different audio. 

    There is a bypass path which would allow you to pass the microphone signal directly to one of the outputs,  but I'm not sure that is what you want. 


    -Steve Wilson