A commom audio transfer question in TDM16 format


I always meet with difficulty in several different projects. When I use TDM16 format to receive datas using ADAU1452, I can get all the 16 channels audio datas and it sounds like good. 

What confused me is that sometimes for example, I copy the same datas to all 16 channels in Tx device and then send out. After I received in 1452, the datas are not the same, usually some channels sound like in a low voice than the others. I mean that the volume of some channels are lower but it's still the correct audio without any noise or click.

Please give me some issues about this situation.

  • 0
    •  Analog Employees 
    on Jun 3, 2021 7:19 PM


    There are several reasons this could be happening. If the transmitting and receiving serial ports do not match in configuration, you might be introducing a 1-bit shift, which would sound like the audio coming back a few dB softer. That's where I would start.

    This 1-bit shift also might happen for other reasons. For example, if the SigmaDSP's TDM input is clock master, and your clock wires are very long, there might be too much loading for the timing to be met. You could try increasing the drive strength of those pins from the PIN_DRIVE page. Or, if your system allowed, having the transmitting device as clock master is usually preferred. These kinds of issues start coming with the fast data turnaround needed in TDM8 and TDM16.

    If the audio it is sounding a LOT quieter, like 30-40dB, maybe you have the wrong bit depth selected.

    There are some other potential root causes, but let's start there (if you are still working on this - I know the response is a month late).



  • Hello,

    Recently, I found a method to resolve this problem, but I don't know if it's proper. I add a driver chip after the BCLK and LRCLK pins which is the clock master device.

    I tried to change the PIN_DRIVE configuration, when I strengthen the master clock pin, the audio sounds terrible. So I add the driver chip outside.

  • 0
    •  Analog Employees 
    on Jun 4, 2021 3:39 PM in reply to Foster

    Glad to hear it's working, but this shouldn't be necessary unless the ICs are far apart. Timing may be an issue on the receiving end if the data line is not buffered, too. 16*48000*32 is 24.576 MHz. At these frequencies, best practices for PCB layout and termination are required. Feel free to PM me if you would like a schematic/layout review.

  • Hi Ken,

    I met this problem in several projects when using TDM8 and TDM16, since my ICs are far away from each other, usually they are in different boards. I think the PCB layout will be an important thing in my system, but I don't know how to make it properly and what points I need to be careful. Please give me a reference, my email is thy805075995@foxmail.com, thank you very much!

  • +1
    •  Analog Employees 
    on Sep 12, 2021 7:47 PM in reply to Foster

    Hello Foster, 

    Let me jump into this discussion along with Josh and Ken.

    Which part is the master for LRCLK and BCLK?

    If it is the 1452 then I would increase the drive strength of the BCLK and LRCLK pins and also any SDATA pin that is an output for TDM16. The default drive strength for the part is the lowest and so to meet timing specifications for a long run you have to increase the drive strength. By the way, if you increase the strength of the MCLK pin and the audio suffered then you may have issues with reflections in the transmission lines. This would cause double triggers etc. 

    If you are sending out TDM16 over wires to other boards then you WILL have lots of issues with receiving the data properly. I find the same thing here in the lab with TDM16. Then how the cables are run is important. You must run a ground along with them for a return current path. Often the best thing to do is to use a ribbon cable and alternate between a clock and ground for the conductors on the ribbon. This also includes the data because it has just as high of a frequency component as the BCLK does. 

    One alternative to a ribbon is to wrap a ground wire along with a signal wire. That can sometimes help but it is difficult. 

    Dave T