1 crystal and 1 EEPROM for 2 ADAU 1787
Hello,
We would like to connect 2 ADAU 1787 on the same Crystal to obtain the best synchronisation and same EEPROM so during the Boot Both ADAU will be programmed one after the other.
1. Is it possible to have 1 ADAU that Drive the crystal with XTALI and XTALO and feed a Second Adau on MLCKI with the XTALI signal of the first ADAU ? In our mind that's the best option for the best synchonisation ?
2. Is it possible to share an EEPROM beetween the 2 ADAUs on the same SDA/SCL lines and programm everything using Sigma studio with the USBZ?
3. We already played with a shared TDM on tristate so we're confident that sharing TDM lines aren't an issue if they are delayed but correct us if you think we're wrong.
Maybe it would be more clear with this shematic.
Thank you very much,
Have a nice day
Valentin
hardware
ADAU1787
Integrated/Special Purpose A/D Converters
Audio CODECs
Hello Valentin,
This will require some experimentation on your part but I can answer most of your questions.
Val52100 said:
1. Is it possible to have 1 ADAU that Drive the crystal with XTALI and XTALO and feed a Second Adau on MLCKI with the XTALI signal of the first ADAU ? In our mind that's the best option for the best synchonisation ?
Yes, there is a way to generate a clock out using am MP pin. Here is the quote from the datasheet:
Val52100 said:
2. Is it possible to share an EEPROM beetween the 2 ADAUs on the same SDA/SCL lines and programm everything using Sigma studio with the USBZ?
Yes, it is possible. We did an experiment many years ago with a different DSP and had one EEPROM and the DSPs were all powered up at the same time and they all tried to communicate with the EEPROM exactly the same time and it worked but I would NOT recommend that. Yes, you can share the same SDA/SCL lines.
You will need to set chip address pins ADDR0 and ADDR1 to different addresses and then in SigmaStudio you drag in two instances of the part and set the USBi address in the pull down selection box to match the setup of the pins.
The problem is with power up. You really need to gate the power up of one of the DSPs by using something like an MP pin that will change state once the program is loaded and running. Then it will wake up the other DSP and that one will access the EEPROM. The first chip will be done with it by then. So there are a few details to work out.
You may be able to use the /PD pin. I have not experimented with this to see if it will still trigger the selfboot. It should. Also, pay attention to the power supply sequence.
Val52100 said:
3. We already played with a shared TDM on tristate so we're confident that sharing TDM lines aren't an issue if they are delayed but correct us if you think we're wrong.
Yes, you are correct about the TDM tristate and sharing. That is the entire point of the tristate feature. However, you need to have the LRLCK synchronized.
There is a writeup about this in the datasheet. Again, this is not something I have personally experimented with.
You could setup one to be a master and the other a slave but here is where you will run into problems. I am talking about different register settings. Also, if you share a TDM bus then one part will drive some of the outputs but the other will drive the other outputs. Again, different settings! I mention this because it will mean the EEPROM contents would have to be different.
Many years ago I wrote an App note about using a very small PIC uC to boot up a codec.
AN-1365: AD1933/AD1934/AD1938/AD1939/AD1974 Boot Up Application | Analog Devices
You might be able to do something like this to either store the programs in this chip or have it change the registers once both are booted? Perhaps control the power up sequence?
I am thinking creatively but you will need to experiment. I am not sure if all this will be possible in the end from the sounds of your system and the needs to share a TDM line?
I may be missing some other details. Others may chime in! Hey others!, please do chime in!!
Dave T
Please log in to reply.



