ΣSigmaStudio Ask AI Русский Log in

4 x ADAU1761 in TDM8

SigmaDSP & SigmaStudio Jo.D Mar 31, 2011 00:00 6 replies Original on forum ↗
Subscribe
Jo.D Question
Mar 31, 2011 00:00

I attached 4 x ADAU1761 to a Blackfin in TDM8 mode, each ADAU1761 must transmit 2 audio channels to the Blackfin. I can configure all ADAU1761 so that they transmit audio on the correct TDM8 channel. The first ADAU1761 uses TDM channel 1&2, the second ADAU1761 uses TDM channel 3&4, .... But the problem is that the first ADAU1761 pulls down TDM channel 3,4,5,6,7&8 instead of beiing high impedance. The second ADAU1761 pulls down channel 1,2,5,6,7&8 and so one. So i am not able to use multiple ADAU1761 on 1 TDM line. Am i configuring something wrong?

Thanks

Audio Signal Processors

SigmaDSP Audio Processors

adau1761

ADIApproved Reply
Apr 1, 2011 00:00

Unfortunately the ADAU1761 serial ports do not go to high impedance when unused channels are being output. The output line is driven at all times. Could you possibly use the I2S lines instead and send two channels per ADAU1761 to the Blackfin?

Jo.D Reply
Apr 1, 2011 00:00

We use a custom designed board with a Blackfin BF538. The BF538 has 4 SPORT ports but 3 of hem are already in use by other codecs and a FPGA, the 4th will be used to connect 8 ADAU1761's, 4 on the primary channel and 4 on the secundary channel. So the BF538 board is existing and can't be changed, the ADAU1761 board is still in design. I think I will make the TDM outputs of the ADAU1761's opencollector by adding high speed transistors.

Thanks for the quick answer, now i can stop looking at the ADAU1761 settings and try a hardware solution.

ADIApproved Reply
Apr 4, 2011 00:00

You could use four ADAU1761s on a single TDM data connection to the Blackfin by daisy-chaining them, instead of having each one drive the common bus for their appropriate time slots. This will add a minimal bit of processing to the DSP core, but it would prevent you having to use external transisitors. The way that you would set it up is have each ADAU1761's serial port set up for TDM8 input and output. The TDM output of the first codec would have channels 0 & 1 populated. In the 2nd codec, you would just take these inputs in on digital channels 0 & 1 in your SigmaStudio project, and simply connect them to digital outputs 0 & 1, and connect the processing done in the 2nd codec to outputs 2 & 3. Continuing down the line through the next two codecs, at the output of the 4th ADAU1761 you'll have all 8 channels populated and that can be sent directly to the Blackfin.

If you set up your TDM connections this way, you'll have to keep in mind that this will introduce a fixed group delay between each of the codecs. You can compensate for this with delay blocks so that when the data reaches the Blackfin they are all synchronous.

Jo.D Reply
Apr 5, 2011 00:00

I also need to send audio channels from the Blackfin to all the ADA1761's. I could do this by daisy-chaining them from the blackfin TDM output -> trough all ADAU1761's -> Blackfin TDM input. This way the first ADAU1761 gets 8 audio channels from the Blackfin and replaces the received audio slots 1&2 with his own audio channels for the Blackfin, and the second .... . But this setup is getting a bit to complicated, I need to take care with delays and the whole system is down when 1 ADAU1761 is down. I will try the transistor option first, and keep this as backup.

Thanks for the interesting idea.

Jo

ADIApproved Reply
Apr 5, 2011 00:00

Jo - the connection from the Blackfin back to the four ADAU1761's is simpler and does not need to be daisy-chained. You could connect the same TDM output trace from the BF to each of the ADAU1761's serial inputs. Then, in the SigmaStudio schematic for each ADAU1761 you would just select the appropriate channels to take from the TDM stream. The connection to the Blackfin input is more complicated because you have multiple devices writing data to a single bus line. When your connection is from the Blackfin to multiple codecs, you only have a single output going to multiple inputs.

EZAdministrator Reply
Apr 29, 2019 00:00

This question has been closed by the EZ team and is assumed answered.