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.

TLV320AIC3100: Noise problems at microphone input

Part Number: TLV320AIC3100

Tool/software:

Hi,

My design has noise problems at the microphone input.

The signal to noise ratio is not good.

I have filtered the AVDD and HPVDD power supply but it is not enough.

I still have a little background noise that I don't know how to eliminate.

I have checked the layout guidelines and I don't know what I can do to improve the audio quality at the microphone input.

Thank you for your help.

  • Hi,

    Can you share your schematic and your I2C configuration? Some notes on improving noise in audio systems that I can generically provide would be that you should be using a differential input, twisting the wires if the leads are long (or keep traces short if all on a board), change your input impedance setting to something higher or lower to see if it helps, AC coupling, turn off AGC. In the datasheet it says the minimum SNR is 80dB for the mic input shorted to GND and A-weighted, are you getting worse than this in your system? Or worse than -70dB THD+N for a -2dBFS signal? When you share your schematic and config script I can help more here.

    Best,
    Mir

  • Hi Mir,


    The equipment is an on-board IP intercom for railway applications, and in attached files I send you the assembly of components and the wiring diagram with the related parts.

    I have checked that there is no noise when the microphone input is open, without connecting it to the microphone or to GND. But I have not checked to short it to GND.

    I have had significant improvements by mounting V16, I suppose by eliminating possible oscillations due to consumption variations in the digital part of the +3V3.

    I have also tried to supply the circuit with voltages generated with laboratory linear power supplies and there is no improvement.

    I am using a moving coil electrodynamic microphone with MICBIAS disabled. I have also tried with an electret model with the same result.

    Here is the data of each of the registers (in hexadecimal)

    Page 1 / Register 47 -> 0xCD

    Page 1 / Register 48 -> 0x00

    Page 1 / Register 49 -> 0x30

    Page 1 / Register 50 -> 0x00

    Page 0 / Register 82 -> 0x40

    Page 0 / Register 83 -> 0x28

    Page 0 / Register 84 -> 0x00

    Page 0 / Register 86 -> 0x00

    All registers on page 0:

         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef

    00: 00 00 01 66 00 11 04 00 00 00 00 01 01 00 80 80    ..?f.??....??.??

    10: 08 00 01 01 80 80 04 00 00 00 01 0c 00 00 01 00    ?.?????...??..?.

    20: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 00    ....?...........

    30: 00 00 00 02 32 12 03 02 02 11 10 00 01 04 00 34    ...?2??????.??.4

    40: 0c 27 27 00 6f 38 00 00 00 00 00 ee 10 d8 7e e3    ?''.o8.....???~?

    50: 00 00 40 28 00 00 00 00 7f 00 00 00 00 00 00 00    ..@(....?.......

    60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    70: 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00    .....?..........

    80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    All registers on page 1:

         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef

    00: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ?...............

    10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 14    ...............?

    20: 06 3e 00 40 7f 7f a6 7f 02 02 14 00 20 86 00 cd    ?>.@???????. ?.?

    30: 00 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00    .0..............

    40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    Thank,

    Fernando.

    NT2110H2_B EE.pdfNT2110_A MC 3D.PDF

  • Hi Fernando,

    Thank you for the info. Mir is out of office today and will follow up with you tomorrow.

    Thanks for your patience,
    Jeff McPherson

  • Hi,

    Looking at your schematic and register settings, here are my notes:

    Firstly, you may want to connect the unused inputs MIC1LP and MIC1RP to GND in your schematic. I get more into this later in the register settings.

    Page 1 / Register 47 -> 0xCD # 1100 1101 mic pga is at 0db, also set to 100 1101 = 38.5

    ideally this should be set to 0100 1101 if you want to set the pga to 38.5db of gain, or 0x80 for pga = 0db of gain

    Page 1 / Register 48 -> 0x00 #mic1lp, mic1rp, and mic1lm are NOT selected for the mic pga

    Page 1 / Register 49 -> 0x30 #mic1lm is selected for micpga m terminal rin=40k

    instead, register 48 should be set to 0x0c (if rin=40k is desired) and register 49 should be set to 0xc0 to select common mode for the m terminal, this is the correct configuration for a single ended signal in as shown in the schematic.

    Page 1 / Register 50 -> 0x00 #all inputs are floating
    instead, set this to 0xc0 to set MIC1LP and MIC1RP to the common mode internally instead of connecting to gnd via hardware. If you connect to GND in hardware, there is no need for this and you can keep it at 0x00. But connecting to common mode instead of leaving them floating and unused may help with noise

    Page 0 / Register 82 -> 0x40 #adc not muted, set to -0.4dB of fine gain control on ADC (make sure you want this, this would mean that the adc gain is 19.6dB as of register 83)

    Page 0 / Register 83 -> 0x28 #adc channel is set to 20dB of gain
    I would recommend setting the PGA higher before maxing the gain of the ADC, this is digital gain within the device while the PGA gain is gain applied at the mic input into the device. As it is configured now there is a chance that the PGA is not experiencing any gain that was set until you change bit D7 on page 1 register 47.

    Let me know if you have more questions, I hope this helps. Let me know if it starts to sound better once you make these changes. The biggest one is registers 48 and 49 for the internal routing to the PGA.

    Best,
    Mir

  • Hi Mir,

    Many thanks for your indications.

    I have made the changes you have indicated to the values of the registers with positive effects. The noise is gone and now the audio quality is very good.

    I would like to use this component again for new designs.
    But I am concerned that the last revision of the data sheet is from October 2016, almost 10 years ago and I would like to know how long it will be available.
    Would you advise me to use it for new designs, or would it be better to use another similar model from Texas?
    The new design would be an IP power amplifier, for railway applications used on rolling stock.

    Best,

    Fernando

  • Hi Fernando,

    No problem, I am glad it worked. The AIC3100 is an active device, which TI guarantees will be in production for the next 5 years at least, but since it is still being ordered and used frequently I would expect it to be available for longer than that. If you are not using the class D amp on the codec and just using it for the codec/headphone out, I would recommend our new TAC5x1x devices, since they are more recently released and have a GUI with active support. But, we will still be supporting the AIC3100 for many years from now so you do not need to worry about it being discontinued in the next 5+ years.

    Best,
    Mir