ADAU1701
Production
The ADAU1701 is a complete single-chip audio system with a 28-/56-bit audio DSP, ADCs, DACs, and microcontroller-like control interfaces. Signal processing...
Datasheet
ADAU1701 on Analog.com
AD1895
Production
The AD1895 is a 24-bit, high-performance, single-chip, second-generation asynchronous sample rate converter. Based upon Analog Devices experience with...
Datasheet
AD1895 on Analog.com
Hi there,
we are planning a small DSP board using the ADAU1701.
Features should be:
internal ADC (2 channel)
internal DAC (4 channel)
external S/PDIF receiver (maybe with transmitter to)
external DAC (2 channel)
I2S in
I2S out
Now it comes to the clocking.
Lets say, we are using i.e. a WM8804 as the S/PDIF receiver, then this will be the clock master MCLK for the whole system. (This IC got a clock switchover for locked/unlocked PLL from recovered S/PDIF data)
When using a 12.288Mhz with the WM8804, this will be our master clock when no digital signal is provided. When feeding in a signal to the S/PDIF, we will have 12.288MHz with 48kHz input and MCLK set to be 256*fs, as well as at 96kHz input and MCLK set to 128*fs for feeding the rest of the system. When feeding in 44.1kHz, there will be 11.2896MHz (256*fs), so the DSP will run ~8% slower. As i'd read in the threads here, this would be no big deal but what about some time coefficients within the DSP code?
So now there is a problem, that i cant set the ADAU PLL to be 128*fs (when running at 48kHz)
So it should be like: 96kHz fs and 256*fs = 24.576MHz (from WM8804), the PLL of the ADAU1701 should then be set to 256*fs as well (and running in double-rate).
But there also is a fundamental question, can i feed different sample rates into the ADAU1701 with fixed system-sample rate?
I mean, having the ADAU1701 running internally at 48kHz, can i input signals with 96/192kHz, i guess not. Will it work the other way? (Running the ADAU1701 at 96kHz internally and feeding in digital signals with fs<=96khz)
Lets say i want to be able to input 32-96kHz into the system, then the best (only) way to do is to use an ASRC like the AD1895/6?
Im a bit confused about all this.
Kindly regards,
Christian
I think you answered your own question; the only way to run multirate with -1701 is to load a new program when the sample rate changes. The programs have to be different because as you guessed the filter coefficients must change for the new rate (SigmaStudio calculates those for you on compilation).
Another problem you might have is the instruction count is halved when using double-speed rates, so you have to keep that in mind when designing your programs.
You are probably better off using one of the chips with ASRCs and internal SPDIF, having that be the clock master, and running external ADC/DAC as slaves.
I have the exact same requirement: 2 x Analog INs and 6 x Analog OUTs, 1 x Digital IN and 1 x Digital OUT.
I am making a board using ADAV4601 + WM8805 in HW mode. It is cost effective and space effective. With an external ADC or DAC you need input and output filters respectively. This needs good op-amps and adds to cost and space.
I am making a complete system:
1. Front panel with uC based, 3 x push buttons, a 2CH incremental rotary encoder with a switch and 16x2 OLED display
2. Back panel/ Base board with 2 analog input filters and 6 analog output filters that will cater to either ADAV4601 or ADAU1701, WM8805 in HW mode with jumper selecting either optical or co-axial interface and a 20-pin IDC interface to which I can attach either a ADAU1701 or ADAV4601 daughter board.
3. Daughter board with IDC20 header with ADAU1701 minimum system
4. Daughter board with IDC20 header with ADAV4601 minimum system
I can then play with anything I want and not indulge in hardware development for a long time.
AD needs to come out with v2 of ADAV4601 with built-in SPDIF interface, GPIOs and self-boot.
Hi,
well, the ADAV4601 only supports up to 50kHz at his ASRC inputs, so you can't input everything i guess.
Regards,
Christian
Hello Christian,
You brought out a good point. Yes, it is the limitation of ADAV4601.
For a more complete solution, you can think of using 2 x ADAU1701/2 as SMART 2In4Out CODEC to get 4In 8OUT along with ADAU1442 and omit WM8805.
This again eliminates active filters needed if we use external ADCs and DACs.
Kindly post your thoughts on this.
Thanks and regards!