Can I add additional a/d to the EVAL-ADAU1442EBZ? I would like the same number of inputs as outputs. It comes with 8 in and 16 out. I want 16 in and 16 out. I want to do this in a way that sigmastudio sees the additional inputs.
There is a small prototyping area on the ADAU1442 evaluation board that would allow you to add your own circuitry. Of course, the ADC will likely be in an LQFP or some type of similar package, which means you'd need to create a "daughter board" to connect to the eval board in some way. This would require a custom PCB design.
In order to make this work, you'll need to connect the LRCLK, BCLK, and SDATA signals from the ADC to the appropriate pins on the ADAU1442. If you wanted the ADC's data and clocks to be synchronous to the ADAU1442 (therefore not requiring ASRCs), then the MCLK output from the ADAU1442 should be connected to the ADC as well. All of these signals are easily accessible on the evaluation board's headers J21, J22, or J23, which are located near the prototyping area.
Thanks. Are there any stock option eval boards with 16 in and out?
No, none of the SigmaDSP eval boards have 16 channels of analog I/O. The ADAU1442 evaluation board that you're using has the highest analog I/O channel count. You could use two AD1974 evaluation boards connected via I2S or TDM (as described above) to extend the ADAU1442 eval board's analog inputs to 16 channels. The AD1974's ADCs are the same design as the on-board AD1938 codecs, so they are a good match.
I have ordered two boards.
Will the sigmastudio software recognize two eval boards and allow me to program them to do one thing. For instance, if I connect the two eval boards as you have described and want to implement a 16 x 16 matrix multiply (probably as individual FIR filters for each channel) on the 16 inputs and feed the resulting 16 outputs to another piece of hardware, will the software allow me to use the 8 inputs from the other eval board and do the processing on one of the dsp’s? Will the timing all work out correctly?
From: JeradL firstname.lastname@example.org
Sent: Monday, September 13, 2010 3:13 PM
To: Griffin, Steven F
Subject: New message: "additional a/d on eval board"[1tyvsC-4rg-3uy]
Analog Devices EngineerZone<http://ez.analog.com/index.jspa>
additional a/d on eval board
reply from JeradL<http://ez.analog.com/people/JeradL> in SigmaDSP Processors - View the full discussion<http://ez.analog.com/message/13426#13426
Sorry, just to confirm, do you mean you ordered two EVAL-ADAU144x boards?
In that case, it should be very easy to get 16 channels of analog input. The setup is basically as follows:
Board #1: ADCs (8 channels), SigmaDSP, DACs (16 channels)
Board #2: ADCs (8 channels)
Connecting the two boards together is not difficult, but since you're dealing with fairly high frequencies, you need to be careful and keep your connections very short and well shielded in order to maintain clock signal integrity. There are several ways to set up the clocking. I can give you a more detailed description, but first I'd like to know which you prefer.
Option #1: Synchronous setup
Option #2: Asynchronous setup
I would recommend the asynchronous setup just because it is simpler and less likely to fail.
Please let me know what you think and I will proceed to explain how to set up the boards.
I think starting with the asynchronous would work fine. I am implementing a feedforward controller at a relatively low frequency (100-300 Hz). I suspect the kind of delay uncertainty you get with the asynchronous setup is small compared to these frequencies. Do you think that is the case? Anyway, I am ordering two eval-adau144x boards.
I am looking forward to the rest of your answer.
The nice thing about this method is that you can simply route all analog inputs through the ASRCs. Since the ASRCs have a fixed group delay, all of your channels will be delayed by the same amount. That group delay amound can be calculated using the equations in the datasheet. Since I assume you're going to be running the DSP core and the codecs at the same rate, then the group delay is calculated as 48 samples.
The board setup should be like this:
Set up both boards in their normal factory settings. In this mode, the ADAU144x is the clock master and the codecs are slaves. The clock domains 0, 3, 4, and 9 are used for the codecs on each board. More specifically, 0 and 3 are used for the ADCs and 4 and 9 are used for the DACs. So, we basically need to connect clock domains 0 and 3 from board #2 (the ADC-only board) to unused clock domains on board #1. I would select 5 and 6.
Board #2, LRCLK0 and BCLK0 connected to Board#1, LRCLK5 and BCLK5.
Board #2, LRCLK3 and BCLK3 connected to Board#1, LRCLK6 and BCLK6.
Board #2, SDATA_IN0 connected to Board#1, SDATA_IN4.
Board #2, SDATA_IN1 connected to Board#1, SDATA_IN5.
Board #2, SDATA_IN2 connected to Board#1, SDATA_IN6.
Board #2, SDATA_IN3 connected to Board#1, SDATA_IN7.
On Board #1, set clock domains 5 and 6 to the input side.
Set serial ports 4 and 5 to slave to clock domain 6.
Set serial ports 6 and 7 to slave to clock domain 6.
Route serial pair 0 to ASRC0.
Route serial pair 1 to ASRC1.
Route serial pair 2 to ASRC2.
Route serial pair 3 to ASRC3.
Route serial pair 4 to ASRC4.
Route serial pair 5 to ASRC5.
Route serial pair 6 to ASRC6.
Route serial pair 7 to ASRC7.
Set all ASRCs output rates to "DSP Rate."
If you don't have much experience with the ADAU144x and what I've listed above is confusing, just read the datasheet - particularly the serial ports, routing matrix, and ASRC sections - and all of this should make sense.
Thanks, I am mostly used to programming dsp’s using simulink and dspace, so the directions are a little foreign. Can you get to all of these settings via sigmastudio?
Yes, all of what Brett described can be controlled in SigmaStudio in the ADAU144x's Register Controls tab, under the Hardware Configuration tab. This section of the tool is used to configure the IC's control registers, while the Schematic tab is used to design your program that runs in the DSP core.
Retrieving data ...