I2S input on ADAU1702

ADAU1702 I2S Slave configuration

 

When the ADAU1702 is used as an I2S slave, the stream is not read in as should. The audio data is however not clearly received.

 

This is a simplified design of our system:

 

Description of setup:

We have DSP1 (ADAU1701), generating an I2S bit stream, which is then sent via a TI CC8531 wireless audio link to DSP2 (ADAU1702).

 

Problem:

The problem we experience is lots of pops and clicks on our analog outputs of DSP2.

 

Analysis:

  • We have modified DSP1 to send out on one of the 2 I2S channels only a “1” in 5.23 format. We can trace this value easily up till the input of DSP2, so it shows that the signal chain up till here is working ok.
  • We have a board with only an CC8531 receiver and a DAC, this works perfectly.
  • When DSP2 is configured to directly send the value of the I2S input stream to its digital I2S output, there is rubbish coming out on the I2S data line (clock lines seem OK).
  • DSP2 is configured to output a value of “-1” in 5.23 format on the other I2S slot and this is OK.
  • When an RMS level meter is placed in DSP2, and read out via SigmaStudio, this level meter shows a very nervous reading, indicating that the read-in value is also not OK.

This leads to believe that the I2S input of DSP2 is not working as supposed to.

(Attached: “LA Output.png”, logic analyser measurement of DSP2 in- and outputs)


 

Settings of DSP2:

 

What could be wrong here?

Parents
  • 0
    •  Analog Employees 
    on Jan 5, 2017 2:27 AM

    Hello Elmar,

    Sorry for the delay. I have been overloaded and the company shuts down between Christmas and New Years day.

    So yes, your investigation about the MCLK is correct. The phase is not important, what is important is that there are the correct number of transitions for each clock cycle. In your case, 256. So the frequency relative to the BCLK and LRCLK is ciritical. Since you are not transmitting the MCLK then this is a significant issue. So I will try and think of some solutions.

    Try to set the PLL mode to be 64xfs instead of 256xfs. Then it will be looking for an MCLK that is 64 times the sampling frequency. This also happens to be the BCLK frequency which is also 64 x fs. So then run the received BCLK into the MCLKI and see how it performs. There is still the jitter issue. The PLL will filter out some of the jitter but it will still be present on the BCLK and LRCLK. I think the jitter will be OK, 1ns is well within the setup time for the BCLK.

    The other options I can think of is to use a PLL to reconstruct the MCLK at 256 x fs but I don't like that idea and I am rather sure you will not. So try setting the PLL mode pins to 0,0 and feeding the BCLK into the master clock input. Let me know how it goes.

    Dave T

Reply
  • 0
    •  Analog Employees 
    on Jan 5, 2017 2:27 AM

    Hello Elmar,

    Sorry for the delay. I have been overloaded and the company shuts down between Christmas and New Years day.

    So yes, your investigation about the MCLK is correct. The phase is not important, what is important is that there are the correct number of transitions for each clock cycle. In your case, 256. So the frequency relative to the BCLK and LRCLK is ciritical. Since you are not transmitting the MCLK then this is a significant issue. So I will try and think of some solutions.

    Try to set the PLL mode to be 64xfs instead of 256xfs. Then it will be looking for an MCLK that is 64 times the sampling frequency. This also happens to be the BCLK frequency which is also 64 x fs. So then run the received BCLK into the MCLKI and see how it performs. There is still the jitter issue. The PLL will filter out some of the jitter but it will still be present on the BCLK and LRCLK. I think the jitter will be OK, 1ns is well within the setup time for the BCLK.

    The other options I can think of is to use a PLL to reconstruct the MCLK at 256 x fs but I don't like that idea and I am rather sure you will not. So try setting the PLL mode pins to 0,0 and feeding the BCLK into the master clock input. Let me know how it goes.

    Dave T

Children
No Data