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.

TLV320AIC3104: Unexpected Noise on customer board and EVM

Part Number: TLV320AIC3104

Hi Support,

my customer is facing an issue on noise on Audio Codec.

Basically they can see some increased noise on CODEC output even in case that they feed the CODEC by zero signal level via SAI.

This is happening on their board but also on TLV320AIC3104EVM.

More in details, they have this setup on codec: (code for setup of registers in aic310x develop board)

w 30 07 0A

w 30 2B 04

w 30 29 A2

w 30 25 E0

w 30 26 10

w 30 40 00

w 30 2F 00

w 30 41 0D

w 30 33 0D

 

Basically from SAI its go in volume control > Dac > and strait to HP out (mux of output channels is bypassed)  

 

When tested same setup on develop board we have get nearly same output of noise.

 

                Channel 1 our prototype

                Channel 2 tlv320aic3104vm development board

 

                1 When registers are setup codec is nearly without noise: scope_22

                2 After something is played (but nothing is playing – sending 0 by SAI), there is big level of noise: scope_23, 24, 25

                3 When output is muted (HP out and DAC powered down) output noise is some but not big.  In scope_27 prototype has muted output.

 

I attach scopes.

Can you help me identifying the root of this issue?

Thanks and regards,

Alberto

scopes.zip

  • Hi, Alberto,

    The noise issue you are experiencing is probably related to the routing of the device. In general we recommend to connect directly the DAC output to the HP driver through the mux when noise performance is not important, but lower power consumption is desired. For best performance operation, routing through the mixer path is recommended. Could you please ask customer to route the output through the output mixer and see if the noise gets improved?.  For further reference about this, please refer to section 2.5 of  SLAA749 

    Best Regards,

      -Diego Meléndez López
       Audio Applications Engineer

  • Diego,

    thanks for your reply.

    Customer tested routing to output mixer.

    Their feedback:

    Basically your suggestion helped to reduce the noise amplitude about 30%.

    But the current 200mV p-p value is still quite large.

    I would highlight that what we see on the CODEC coutput does not seems to be a real noise – look on the picture below.

    From the signal waveform can bee seen that this signal is directly generated by DAC output – you can see even the DAC steps in the signal.

    However when this signal is being played by the earmuff speaker it is perceived as a white noise.

    It seems to me that this must be caused by some bad setting that DAC generates such pseudo-noise signal.

    I hope that this behaviour is not considered as typical for this CODEC otherwhise itthe values of SNR stated in datasheet could be hardly achieved.

    Can you kindly provide your feedback?

    Thanks

    Regards

    Alberto

  • Hi, Alberto,

    Thanks for the feedback. Could you please share the clock settings customer is using?. I took a  quick look to the register setting and it seems that the order followed is not what we usually recommend. In general for these devices, it is recommended to follow the following order to avoid possible pop,/noise issues:

    1. Provide valid clocks and power supplies
    2. Configure the internal routing
    3. Power-up the DAC/ADC
    4. Unmute DAC/ADC
    5. Power-up and unmute drivers.

    I will try customer's code and see for a different issue, in the meantime, could you please check if changing the sequence of the code could help with the issue?

    Thanks and best Regards,

      -Diego Meléndez López
       Audio Applications Engineer

  • Hi Diego,

    thank you for advice, if I understand it correctly it is needed to have clocks on codec, before setup of registers is made, correct?

    Now order of customer setup is:

    1. Power is provided.
    2. HW reset is done
    3. Setup via I2C is made:
    Register Value
    0 0x00
    1 0x80
    7 0x0A
    43 0x04
    41 0x02
    37 0xE0
    38 0x10
    47 0x80
    61 0x80
    65 0x0D
    51 0x0D
    19 0x3F
    22 0x3F
    15 0x00
    16 0x00
    4. Clock are provided and data transfer start

    Interface is set to I2S Standard with 16kHz

    Measured values are:
    Master clock is 4,5MHz
    Audio serial data bus bit clock 554kHz
    Audio serial data bus word clock 17,29kHz

    Please let me know your feedback.
    Best regards,
    Alberto
  • Hi, Alberto,

    Thanks for the feedback. Correct, it is recommended to provide the clocks before configuring the device. I reviewed the clocks used by customer and the clock combinations are not valid. From the code I understand the device is acting as a slave, so the clocks used for the I²S bus should be adjusted for a proper operation. Can you please check with customer why they are using those clock values and see if it is possible to provide valid audio clocks?. Please refer to section 10.3.3.1 Audio Clock Generation from the datasheet to find out how to configure properly the clocks of this device.

    Best Regards,

      -Diego Meléndez López
       Audio Applications Engineer

  • Diego,

    customer was able to set the frequency of the SAI to exactly 16 kHz (pls see below). Unfortunately the noise is still the same. It did not help. Noise levels are up to 200mV Peak-peak.

    Do you have any suggestions what they can do to make it better?

    Thanks and regards,

    Alberto

  • The  issue has been followed-up off line, clock configuration of the device was required.

    Best Regards,

      -Diego Meléndez López
       Audio Applications Engineer