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

additional a/d on eval board

SigmaDSP & SigmaStudio sfgriffi Sep 10, 2010 00:00 10 replies Original on forum ↗
Subscribe
sfgriffi Question
Sep 10, 2010 00:00

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.

Thanks,

Steve

ADIApproved Reply
Sep 13, 2010 00:00

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.

sfgriffi Reply
Sep 13, 2010 00:00

Thanks. Are there any stock option eval boards with 16 in and out?

ADIApproved Reply
Sep 14, 2010 00:00

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.

sfgriffi Reply
Sep 14, 2010 00:00

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?

Thanks,

Steve

From: JeradL analog@sgaur.hosted.jivesoftware.com

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<https://ez.analog.com/index.jspa>;

additional a/d on eval board

reply from JeradL<https://ez.analog.com/people/JeradL>; in SigmaDSP Processors - View the full discussion<https://ez.analog.com/message/13426#13426

ADIApproved Reply
Sep 14, 2010 00:00

Hi Steve,

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

SigmaDSP on Board #1 is the clock master for all codecs - MCLK needs to be connected from one board to the other

This more closely resembles what your real system would probably look like

It requires more connections between the board

It will be a little more difficult to set up, and more things could potentially go wrong

Option #2: Asynchronous setup

Requires an ADAU1442

Both boards are their own clock masters - no MCLK is required to connect the two boards

Only 5 connecting wires are required

The register settings of the project will probably vary a bit from your real finished project, but that should be fine for a prototype

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.

sfgriffi Reply
Sep 14, 2010 00:00

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.

Thanks,

Steve

ADIApproved Reply
Sep 14, 2010 00:00

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.

So...

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.

sfgriffi Reply
Sep 14, 2010 00:00

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?

ADIApproved Reply
Sep 14, 2010 00:00

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.

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin